Hello community,

here is the log from the commit of package xfce4-settings for openSUSE:Factory 
checked in at 2014-08-27 07:46:15
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/xfce4-settings (Old)
 and      /work/SRC/openSUSE:Factory/.xfce4-settings.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "xfce4-settings"

Changes:
--------
--- /work/SRC/openSUSE:Factory/xfce4-settings/xfce4-settings.changes    
2013-05-06 10:11:40.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.xfce4-settings.new/xfce4-settings.changes       
2014-08-27 07:46:34.000000000 +0200
@@ -1,0 +2,6 @@
+Mon Aug 25 12:34:37 UTC 2014 - [email protected]
+
+- add xfce4-settings-fork-before-gtk-dbus-init.patch in order to
+  fix problems due to forking after gtk/dbus init (bxo#11045)
+
+-------------------------------------------------------------------

New:
----
  xfce4-settings-fork-before-gtk-dbus-init.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ xfce4-settings.spec ++++++
--- /var/tmp/diff_new_pack.2Vb05a/_old  2014-08-27 07:46:35.000000000 +0200
+++ /var/tmp/diff_new_pack.2Vb05a/_new  2014-08-27 07:46:35.000000000 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package xfce4-settings
 #
-# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -24,6 +24,8 @@
 Group:          System/GUI/XFCE
 Url:            http://docs.xfce.org/xfce/xfce4-settings/start
 Source:         
http://archive.xfce.org/src/xfce/xfce4-settings/4.10/%{name}-%{version}.tar.bz2
+# PATCH-FIX-UPSTREAM xfce4-settings-fork-before-gtk-dbus-init.patch bxo#11045 
[email protected] -- Fix problems due to forking after gtk/dbus init
+Patch0:         xfce4-settings-fork-before-gtk-dbus-init.patch
 BuildRequires:  intltool
 BuildRequires:  update-desktop-files
 BuildRequires:  pkgconfig(dbus-glib-1)
@@ -75,6 +77,7 @@
 
 %prep
 %setup -q
+%patch0 -p1
 
 %build
 %configure \

++++++ xfce4-settings-fork-before-gtk-dbus-init.patch ++++++
>From 73a60fcc1c2edf7fc835a715d0b9055afda8f971 Mon Sep 17 00:00:00 2001
From: Eric Koegel <[email protected]>
Date: Mon, 28 Jul 2014 09:03:30 +0300
Subject: [PATCH] Fork before gtk/dbus init (Bug 11045)

https://mail.xfce.org/pipermail/xfce4-dev/2014-May/030715.html
has the rational for the change.
---
 xfsettingsd/main.c | 44 +++++++++++++++++++++++++++++++-------------
 1 file changed, 31 insertions(+), 13 deletions(-)

diff --git a/xfsettingsd/main.c b/xfsettingsd/main.c
index 55c4183..063d4a2 100644
--- a/xfsettingsd/main.c
+++ b/xfsettingsd/main.c
@@ -175,11 +175,12 @@ main (gint argc, gchar **argv)
 
     context = g_option_context_new (NULL);
     g_option_context_add_main_entries (context, option_entries, 
GETTEXT_PACKAGE);
-    g_option_context_add_group (context, gtk_get_option_group (FALSE));
+    /* We can't add the following command because it will invoke gtk_init
+       before we have a chance to fork.
+       g_option_context_add_group (context, gtk_get_option_group (FALSE));
+    */
     g_option_context_add_group (context, xfce_sm_client_get_option_group 
(argc, argv));
 
-    gtk_init (&argc, &argv);
-
     /* parse options */
     if (!g_option_context_parse (context, &argc, &argv, &error))
     {
@@ -207,6 +208,33 @@ main (gint argc, gchar **argv)
         return EXIT_SUCCESS;
     }
 
+    /* daemonize the process */
+    if (!opt_no_daemon)
+    {
+        if (daemonize () == -1)
+        {
+            /* show message and continue in normal mode */
+            g_warning ("Failed to fork the process: %s. Continuing in 
non-daemon mode.", g_strerror (errno));
+        }
+    }
+
+    if (!gtk_init_check (&argc, &argv))
+    {
+        if (G_LIKELY (error))
+        {
+            g_printerr ("%s: %s.\n", G_LOG_DOMAIN, error->message);
+            g_printerr (_("Type '%s --help' for usage."), G_LOG_DOMAIN);
+            g_printerr ("\n");
+            g_error_free (error);
+        }
+        else
+        {
+            g_error ("Unable to open display.");
+        }
+
+        return EXIT_FAILURE;
+    }
+
     dbus_connection = dbus_bus_get (DBUS_BUS_SESSION, NULL);
     if (G_LIKELY (dbus_connection != NULL))
     {
@@ -254,16 +282,6 @@ main (gint argc, gchar **argv)
         g_clear_error (&error);
     }
 
-    /* daemonize the process */
-    if (!opt_no_daemon)
-    {
-        if (daemonize () == -1)
-        {
-            /* show message and continue in normal mode */
-            g_warning ("Failed to fork the process: %s. Continuing in 
non-daemon mode.", g_strerror (errno));
-        }
-    }
-
     /* launch settings manager */
     xsettings_helper = g_object_new (XFCE_TYPE_XSETTINGS_HELPER, NULL);
     xfce_xsettings_helper_register (XFCE_XSETTINGS_HELPER (xsettings_helper),
-- 
2.0.2

-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to