[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

compiz: Changes to 'debian-unstable'



 debian/changelog                         |   11 +-
 debian/compiz.wrapper                    |    3 
 debian/patches/016_fix-dbus-plugin.patch |  153 +++++++++++++++++++++++++++++++
 debian/patches/series                    |    1 
 4 files changed, 163 insertions(+), 5 deletions(-)

New commits:
commit 4cb600c967b9fe89fad1384e3ee16285db0f7d1d
Author: Thierry Reding <thierry@gilfi.de>
Date:   Thu Jan 4 15:58:02 2007 +0100

    Drop --strict-binding, --use-cow and add --no-fbo command-line options.

diff --git a/debian/changelog b/debian/changelog
index a19e2df..4b2b050 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -19,11 +19,14 @@ compiz (0.3.6-1) experimental; urgency=l
   * Add patch 014_tfp-server-extension that makes compiz look for
     GLX_EXT_texture_from_pixmap in the server extensions too.
   * Add patch 015_optional-fbo which adds a command-line option for disabling
-    the use of FBOs (work around buggy drivers).
+    the use of FBOs (work around buggy drivers). Add the --no-fbo option to
+    command-line in the compiz wrapper.
   * Add patch 016_fix-dbus-plugin which should make compiz work with dbus
     again.
+  * Remove the --strict-binding and --use-cow options from the command-line in
+    the compiz wrapper. These are now the defaults.
 
- -- Thierry Reding <thierry@gilfi.de>  Thu,  4 Jan 2007 13:48:42 +0100
+ -- Thierry Reding <thierry@gilfi.de>  Thu,  4 Jan 2007 15:55:57 +0100
 
 compiz (0.3.4-1) experimental; urgency=low
 
diff --git a/debian/compiz.wrapper b/debian/compiz.wrapper
index 69b7b99..1f19bb0 100644
--- a/debian/compiz.wrapper
+++ b/debian/compiz.wrapper
@@ -1,7 +1,6 @@
 #!/bin/sh
 
-COMPIZ_OPTIONS="--strict-binding --use-cow"
-COMPIZ_PLUGINS=""
+COMPIZ_OPTIONS="--no-fbo"
 
 # if the GLX implementation is not by NVIDIA, use indirect rendering
 /usr/bin/glxinfo | grep "client glx vendor string: NVIDIA Corporation" > /dev/null 2>&1

commit 5d2de8b9254fdc461dc73d0e1a4ffbb04afd21f6
Author: Thierry Reding <thierry@gilfi.de>
Date:   Thu Jan 4 13:49:58 2007 +0100

    Add patch 016_fix-dbus-plugin which should make compiz work with dbus again.

diff --git a/debian/changelog b/debian/changelog
index 8125bb9..a19e2df 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -20,8 +20,10 @@ compiz (0.3.6-1) experimental; urgency=l
     GLX_EXT_texture_from_pixmap in the server extensions too.
   * Add patch 015_optional-fbo which adds a command-line option for disabling
     the use of FBOs (work around buggy drivers).
+  * Add patch 016_fix-dbus-plugin which should make compiz work with dbus
+    again.
 
- -- Thierry Reding <thierry@gilfi.de>  Wed,  3 Jan 2007 12:39:23 +0100
+ -- Thierry Reding <thierry@gilfi.de>  Thu,  4 Jan 2007 13:48:42 +0100
 
 compiz (0.3.4-1) experimental; urgency=low
 
diff --git a/debian/patches/016_fix-dbus-plugin.patch b/debian/patches/016_fix-dbus-plugin.patch
new file mode 100644
index 0000000..a7dcad3
--- /dev/null
+++ b/debian/patches/016_fix-dbus-plugin.patch
@@ -0,0 +1,153 @@
+diff --git a/plugins/dbus.c b/plugins/dbus.c
+index 68213dc..1fcbe67 100644
+--- a/plugins/dbus.c
++++ b/plugins/dbus.c
+@@ -317,6 +317,18 @@ dbusHandleActionMessage (DBusConnection *connection,
+ 	    if (argument)
+ 		free (argument);
+ 
++	    if (!dbus_message_get_no_reply (message))
++	    {
++		DBusMessage *reply;
++
++		reply = dbus_message_new_method_return (message);
++
++		dbus_connection_send (connection, reply, NULL);
++		dbus_connection_flush (connection);
++
++		dbus_message_unref (reply);
++	    }
++
+ 	    return TRUE;
+ 	}
+ 
+@@ -443,20 +455,19 @@ dbusHandleSetOptionMessage (DBusConnection *connection,
+ 	if (strcmp (option->name, path[2]) == 0)
+ 	{
+ 	    DBusMessageIter iter;
++	    CompOptionValue value, tmpValue;
++	    Bool	    status = FALSE;
+ 
+-	    if (dbus_message_iter_init (message, &iter))
+-	    {
+-		CompOptionValue value, tmpValue;
+-		DbusActionIndex	actionIndex = DbusActionIndexKeyBinding;
+-		Bool		status = FALSE;
++	    memset (&value, 0, sizeof (value));
+ 
+-		memset (&value, 0, sizeof (value));
+-
+-		do
++	    if (option->type == CompOptionTypeList)
++	    {
++		if (dbus_message_iter_init (message, &iter))
+ 		{
+-		    if (option->type == CompOptionTypeList)
++		    do
+ 		    {
+-			if (dbusGetOptionValue (&iter, option->type, &tmpValue))
++			if (dbusGetOptionValue (&iter, option->value.list.type,
++						&tmpValue))
+ 			{
+ 			    CompOptionValue *v;
+ 
+@@ -467,11 +478,20 @@ dbusHandleSetOptionMessage (DBusConnection *connection,
+ 			    {
+ 				v[value.list.nValue++] = tmpValue;
+ 				value.list.value = v;
+-				status |= TRUE;
+ 			    }
+ 			}
+-		    }
+-		    else if (option->type == CompOptionTypeAction)
++		    } while (dbus_message_iter_next (&iter));
++		}
++
++		status = TRUE;
++	    }
++	    else if (dbus_message_iter_init (message, &iter))
++	    {
++		DbusActionIndex	actionIndex = DbusActionIndexKeyBinding;
++
++		do
++		{
++		    if (option->type == CompOptionTypeAction)
+ 		    {
+ 			CompAction *a = &value.action;
+ 			char	   *str;
+@@ -555,40 +575,48 @@ dbusHandleSetOptionMessage (DBusConnection *connection,
+ 			status |= TRUE;
+ 		    }
+ 		} while (dbus_message_iter_next (&iter));
++	    }
+ 
+-		if (status)
++	    if (status)
++	    {
++		if (s)
+ 		{
+-		    if (s)
+-		    {
+-			if (strcmp (path[0], "core"))
+-			    status =
+-				(*s->setScreenOptionForPlugin) (s,
+-								path[0],
+-								option->name,
+-								&value);
+-			else
+-			    status = (*s->setScreenOption) (s, option->name,
+-							    &value);
+-		    }
++		    if (strcmp (path[0], "core"))
++			(*s->setScreenOptionForPlugin) (s,
++							path[0],
++							option->name,
++							&value);
+ 		    else
+-		    {
+-			if (strcmp (path[0], "core"))
+-			    status =
+-				(*d->setDisplayOptionForPlugin) (d,
+-								 path[0],
+-								 option->name,
+-								 &value);
+-			else
+-			    status = (*d->setDisplayOption) (d, option->name,
+-							     &value);
+-		    }
+-
+-		    return status;
++			(*s->setScreenOption) (s, option->name, &value);
+ 		}
+ 		else
+ 		{
+-		    return FALSE;
++		    if (strcmp (path[0], "core"))
++			(*d->setDisplayOptionForPlugin) (d,
++							 path[0],
++							 option->name,
++							 &value);
++		    else
++			(*d->setDisplayOption) (d, option->name, &value);
+ 		}
++
++		if (!dbus_message_get_no_reply (message))
++		{
++		    DBusMessage *reply;
++
++		    reply = dbus_message_new_method_return (message);
++
++		    dbus_connection_send (connection, reply, NULL);
++		    dbus_connection_flush (connection);
++
++		    dbus_message_unref (reply);
++		}
++
++		return TRUE;
++	    }
++	    else
++	    {
++		return FALSE;
+ 	    }
+ 	}
+ 
diff --git a/debian/patches/series b/debian/patches/series
index bf6a47f..baa0b6a 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -3,3 +3,4 @@
 013_set-qtdir-fallback.patch
 014_tfp-server-extension.patch
 015_optional-fbo.patch
+016_fix-dbus-plugin.patch



Reply to: