15 ноября 2011, 18:51 от Yves-Alexis Perez <cor...@debian.org>:
> On mar., 2011-11-15 at 01:50 +0400, Ibragimov Rinat wrote:
> > fix segfault on file open command
> >     
> > There are two definitions of signals assert having one parameter
> > each with G_TYPE_STRING type. But instead of strings, pointers are
> > passed. Additionally Launch method of FileManager dbus interface
> > expecting three strings now.
> > 
> > There is no sense to send this patch to upstream because squeeze was
> > mostly rewrited and now git head have little common with 0.2.3.
> > 
> 
> Could you attach the patch in a standard file instead of inline, btw?

Sure.
One more thing. I just tried it on debian stable and found that there is 
difference
in dbus interface: stable expect two strings but testing - three.
So patches should be slightly different. I attached both.
diff --git a/libsqueeze/xfce-launch-command.c b/libsqueeze/xfce-launch-command.c
index 26587a7..3aff671 100644
--- a/libsqueeze/xfce-launch-command.c
+++ b/libsqueeze/xfce-launch-command.c
@@ -157,6 +157,6 @@ lsq_xfce_launch_command_execute(LSQArchiveCommand *command)
 	LSQXfceLaunchCommand *xfce_launch_command = LSQ_XFCE_LAUNCH_COMMAND(command);
 	
 	/* args */
-	dbus_g_proxy_call(xfce_launch_command->proxy, "Launch", NULL, G_TYPE_STRING, xfce_launch_command->files, G_TYPE_STRING, "",  NULL);
+	dbus_g_proxy_call(xfce_launch_command->proxy, "Launch", NULL, G_TYPE_STRING, xfce_launch_command->files, G_TYPE_STRING, "", G_TYPE_STRING, "", NULL);
 	return TRUE;
 }
diff --git a/src/archive_store.c b/src/archive_store.c
index a9d0794..58956fb 100644
--- a/src/archive_store.c
+++ b/src/archive_store.c
@@ -312,7 +312,7 @@ sq_archive_store_class_init(SQArchiveStoreClass *as_class)
 		 g_cclosure_marshal_VOID__POINTER,
 		 G_TYPE_NONE,
 		 1,
-		 G_TYPE_STRING,
+		 G_TYPE_POINTER,
 		 NULL);
 }
 
diff --git a/src/notebook.c b/src/notebook.c
index bff5ef8..045f984 100644
--- a/src/notebook.c
+++ b/src/notebook.c
@@ -160,7 +160,7 @@ sq_notebook_class_init(SQNotebookClass *notebook_class)
 			G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION, 0,
 			NULL, NULL,
 			g_cclosure_marshal_VOID__POINTER,
-			G_TYPE_NONE, 1, G_TYPE_STRING, NULL);
+			G_TYPE_NONE, 1, G_TYPE_POINTER, NULL);
 
 	sq_notebook_signals[SQ_NOTEBOOK_SIGNAL_STATE_CHANGED] = g_signal_new("archive-state-changed",
 			G_TYPE_FROM_CLASS(notebook_class),
diff --git a/src/archive_store.c b/src/archive_store.c
index a9d0794..58956fb 100644
--- a/src/archive_store.c
+++ b/src/archive_store.c
@@ -312,7 +312,7 @@ sq_archive_store_class_init(SQArchiveStoreClass *as_class)
 		 g_cclosure_marshal_VOID__POINTER,
 		 G_TYPE_NONE,
 		 1,
-		 G_TYPE_STRING,
+		 G_TYPE_POINTER,
 		 NULL);
 }
 
diff --git a/src/notebook.c b/src/notebook.c
index bff5ef8..045f984 100644
--- a/src/notebook.c
+++ b/src/notebook.c
@@ -160,7 +160,7 @@ sq_notebook_class_init(SQNotebookClass *notebook_class)
 			G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION, 0,
 			NULL, NULL,
 			g_cclosure_marshal_VOID__POINTER,
-			G_TYPE_NONE, 1, G_TYPE_STRING, NULL);
+			G_TYPE_NONE, 1, G_TYPE_POINTER, NULL);
 
 	sq_notebook_signals[SQ_NOTEBOOK_SIGNAL_STATE_CHANGED] = g_signal_new("archive-state-changed",
 			G_TYPE_FROM_CLASS(notebook_class),

Reply via email to