Hello community,

here is the log from the commit of package file-roller for openSUSE:Factory
checked in at Tue Oct 11 16:53:06 CEST 2011.



--------
--- openSUSE:Factory/file-roller/file-roller.changes    2011-10-02 
10:01:18.000000000 +0200
+++ /mounts/work_src_done/STABLE/file-roller/file-roller.changes        
2011-10-10 11:21:35.000000000 +0200
@@ -1,0 +2,6 @@
+Mon Oct 10 09:08:10 UTC 2011 - vu...@opensuse.org
+
+- Add file-roller-no-crash-without-nautilus.patch: do not crash if
+  nautilus is not installed. Fix bnc#722863.
+
+-------------------------------------------------------------------

calling whatdependson for head-i586


New:
----
  file-roller-no-crash-without-nautilus.patch

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

Other differences:
------------------
++++++ file-roller.spec ++++++
--- /var/tmp/diff_new_pack.hrbhiL/_old  2011-10-11 16:53:01.000000000 +0200
+++ /var/tmp/diff_new_pack.hrbhiL/_new  2011-10-11 16:53:01.000000000 +0200
@@ -25,6 +25,8 @@
 Url:            http://fileroller.sourceforge.net
 Group:          Productivity/Archiving/Compression
 Source:         
http://download.gnome.org/sources/file-roller/3.2/%{name}-%{version}.tar.bz2
+# PATCH-FIX-UPSTREAM file-roller-no-crash-without-nautilus.patch bgo#649094 
bnc#722863 vu...@opensuse.org -- Do not crash if nautilus gsettings schemas are 
not installed
+Patch0:         file-roller-no-crash-without-nautilus.patch
 # Needed for directory ownership
 BuildRequires:  dbus-1
 BuildRequires:  fdupes
@@ -90,6 +92,7 @@
 %prep
 %setup -q
 translation-update-upstream
+%patch0 -p1
 
 %build
 %configure\

++++++ file-roller-no-crash-without-nautilus.patch ++++++
commit 0b579ad93f99133e6d92af08a36a3d5693edad5f
Author: Vincent Untz <vu...@gnome.org>
Date:   Mon Oct 10 09:12:59 2011 +0200

    Do not crash if nautilus schema is not present
    
    A lot of users use file-roller in non-GNOME environments, where nautilus
    is not installed. We don't want to crash in that case as we only need
    the nautilus schema to determine if we use single-click vs double-click.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=649094

diff --git a/src/fr-window.c b/src/fr-window.c
index 743c8fe..0357b68 100644
--- a/src/fr-window.c
+++ b/src/fr-window.c
@@ -4642,6 +4642,9 @@ is_single_click_policy (FrWindow *window)
        char     *value;
        gboolean  result;
 
+       if (!window->priv->settings_nautilus)
+               return FALSE;
+
        value = g_settings_get_string (window->priv->settings_nautilus, 
NAUTILUS_CLICK_POLICY);
        result = (value != NULL) && (strncmp (value, "single", 6) == 0);
        g_free (value);
@@ -5425,6 +5428,8 @@ fr_window_construct (FrWindow *window)
        GtkToolItem      *open_recent_tool_item;
        GtkWidget        *menu_item;
        GError           *error = NULL;
+       const char * const *schemas;
+       const char       *schema;
 
        /* data common to all windows. */
 
@@ -5441,7 +5446,15 @@ fr_window_construct (FrWindow *window)
        window->priv->settings_ui = g_settings_new (FILE_ROLLER_SCHEMA_UI);
        window->priv->settings_general = g_settings_new 
(FILE_ROLLER_SCHEMA_GENERAL);
        window->priv->settings_dialogs = g_settings_new 
(FILE_ROLLER_SCHEMA_DIALOGS);
-       window->priv->settings_nautilus = g_settings_new (NAUTILUS_SCHEMA);
+
+       /* Only use the nautilus schema if it's installed */
+       schemas = g_settings_list_schemas();
+       for (; *schemas != NULL; schemas++) {
+               if (g_strcmp0 (*schemas, NAUTILUS_SCHEMA) == 0) {
+                       window->priv->settings_nautilus = g_settings_new 
(NAUTILUS_SCHEMA);
+                       break;
+               }
+       }
 
        /* Create the application. */
 
@@ -6045,10 +6058,12 @@ fr_window_construct (FrWindow *window)
                          "changed::" PREF_LISTING_USE_MIME_ICONS,
                          G_CALLBACK (pref_use_mime_icons_changed),
                          window);
-       g_signal_connect (window->priv->settings_nautilus,
-                         "changed::" NAUTILUS_CLICK_POLICY,
-                         G_CALLBACK (pref_click_policy_changed),
-                         window);
+
+       if (window->priv->settings_nautilus)
+               g_signal_connect (window->priv->settings_nautilus,
+                                 "changed::" NAUTILUS_CLICK_POLICY,
+                                 G_CALLBACK (pref_click_policy_changed),
+                                 window);
 
        /* Give focus to the list. */
 
continue with "q"...



Remember to have fun...

-- 
To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org
For additional commands, e-mail: opensuse-commit+h...@opensuse.org

Reply via email to