From 4f2d7949f03e1c198bc888f2d05f421d35c57e21 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Mon, 9 Oct 2017 18:53:29 +0100 Subject: reinit the tree, so we can have metadata --- .../gconf/files/gconf-2.24.0-no-gconfd.patch | 19 +++++ .../gconf-2.28.0-entry-set-value-sigsegv.patch | 18 +++++ .../gconf-3.2.6-gsettings-data-convert-paths.patch | 41 +++++++++++ .../gconf/files/gconf-3.2.6-mconvert-crasher.patch | 45 ++++++++++++ .../files/gconf-3.2.6-spew-console-error.patch | 83 ++++++++++++++++++++++ 5 files changed, 206 insertions(+) create mode 100644 gnome-base/gconf/files/gconf-2.24.0-no-gconfd.patch create mode 100644 gnome-base/gconf/files/gconf-2.28.0-entry-set-value-sigsegv.patch create mode 100644 gnome-base/gconf/files/gconf-3.2.6-gsettings-data-convert-paths.patch create mode 100644 gnome-base/gconf/files/gconf-3.2.6-mconvert-crasher.patch create mode 100644 gnome-base/gconf/files/gconf-3.2.6-spew-console-error.patch (limited to 'gnome-base/gconf/files') diff --git a/gnome-base/gconf/files/gconf-2.24.0-no-gconfd.patch b/gnome-base/gconf/files/gconf-2.24.0-no-gconfd.patch new file mode 100644 index 000000000000..8ca6a0d4fc09 --- /dev/null +++ b/gnome-base/gconf/files/gconf-2.24.0-no-gconfd.patch @@ -0,0 +1,19 @@ +diff --exclude-from=/home/dang/.scripts/diffrc -up -ruN GConf-2.23.2.old/gconf/gconftool.c GConf-2.23.2/gconf/gconftool.c +--- GConf-2.23.2.old/gconf/gconftool.c 2008-06-28 05:27:33.000000000 -0400 ++++ GConf-2.23.2/gconf/gconftool.c 2008-09-23 10:20:00.000000000 -0400 +@@ -856,6 +856,7 @@ main (int argc, char** argv) + { + g_print (_("GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL is set, not installing schemas\n")); + makefile_install_mode = FALSE; ++ return 0; + } + + if (makefile_uninstall_mode && +@@ -863,6 +864,7 @@ main (int argc, char** argv) + { + g_print (_("GCONF_DISABLE_MAKEFILE_SCHEMA_UNINSTALL is set, not uninstalling schemas\n")); + makefile_uninstall_mode = FALSE; ++ return 0; + } + + if (makefile_install_mode || makefile_uninstall_mode) diff --git a/gnome-base/gconf/files/gconf-2.28.0-entry-set-value-sigsegv.patch b/gnome-base/gconf/files/gconf-2.28.0-entry-set-value-sigsegv.patch new file mode 100644 index 000000000000..680b1a159b4a --- /dev/null +++ b/gnome-base/gconf/files/gconf-2.28.0-entry-set-value-sigsegv.patch @@ -0,0 +1,18 @@ +From: Romain Perier +Date: Wed, 4 Nov 2009 11:58:25 +0100 +Subject: Do not segfault when entry is NULL + +--- + gconf/gconf-value.c | 1 + + 1 files changed, 1 insertions(+), 0 deletions(-) + +--- a/gconf/gconf-value.c ++++ b/gconf/gconf-value.c +@@ -1609,6 +1609,7 @@ void + gconf_entry_set_value (GConfEntry *entry, + const GConfValue *val) + { ++ g_return_if_fail (entry != NULL); + gconf_entry_set_value_nocopy (entry, + val ? gconf_value_copy (val) : NULL); + } diff --git a/gnome-base/gconf/files/gconf-3.2.6-gsettings-data-convert-paths.patch b/gnome-base/gconf/files/gconf-3.2.6-gsettings-data-convert-paths.patch new file mode 100644 index 000000000000..dc6c66b1c644 --- /dev/null +++ b/gnome-base/gconf/files/gconf-3.2.6-gsettings-data-convert-paths.patch @@ -0,0 +1,41 @@ +From 405f865c07261a95c8c9a09a84ab679c6dd0a330 Mon Sep 17 00:00:00 2001 +From: Colin Walters +Date: Thu, 24 Oct 2013 16:27:24 -0400 +Subject: gsettings-data-convert: Warn (and fix) invalid schema paths + +See https://bugzilla.gnome.org/show_bug.cgi?id=704802 + +https://bugzilla.gnome.org/show_bug.cgi?id=710836 + +diff --git a/gsettings/gsettings-data-convert.c b/gsettings/gsettings-data-convert.c +index 9b2d1d0..160ed41 100644 +--- a/gsettings/gsettings-data-convert.c ++++ b/gsettings/gsettings-data-convert.c +@@ -182,7 +182,23 @@ handle_file (const gchar *filename) + } + + if (schema_path[1] != NULL) +- settings = g_settings_new_with_path (schema_path[0], schema_path[1]); ++ { ++ char *compat_path_alloced = NULL; ++ char *compat_path; ++ /* Work around broken .convert files: ++ https://bugzilla.gnome.org/show_bug.cgi?id=704802 ++ */ ++ if (!g_str_has_suffix (schema_path[1], "/")) ++ { ++ g_warning ("Schema file '%s' has missing trailing / in '%s'", ++ filename, schema_path[1]); ++ compat_path = compat_path_alloced = g_strconcat (schema_path[1], "/", NULL); ++ } ++ else ++ compat_path = schema_path[1]; ++ settings = g_settings_new_with_path (schema_path[0], compat_path); ++ g_free (compat_path_alloced); ++ } + else + settings = g_settings_new (schema_path[0]); + +-- +cgit v0.10.1 + diff --git a/gnome-base/gconf/files/gconf-3.2.6-mconvert-crasher.patch b/gnome-base/gconf/files/gconf-3.2.6-mconvert-crasher.patch new file mode 100644 index 000000000000..54681bcb0e86 --- /dev/null +++ b/gnome-base/gconf/files/gconf-3.2.6-mconvert-crasher.patch @@ -0,0 +1,45 @@ +From 98ff7acca7595f508b094506195aeffaf2e8b74c Mon Sep 17 00:00:00 2001 +From: Stefan Sauer +Date: Wed, 23 Jan 2013 08:11:18 +0100 +Subject: mconvert: enable recursive scheme lookup and fix a crasher + +The recursive scheme lookup is needed to scan the whole settings path. The crash +would happen in the case of a misconfiguration (e.g. building gconf from source +and running uninstalled while the configure settings don't match the one used to +create the installed package). + +diff --git a/gsettings/gsettings-data-convert.c b/gsettings/gsettings-data-convert.c +index a8af942..9b2d1d0 100644 +--- a/gsettings/gsettings-data-convert.c ++++ b/gsettings/gsettings-data-convert.c +@@ -22,6 +22,7 @@ + #include + #include + #include ++#include + #include + #include + +@@ -90,6 +91,10 @@ get_writable_client (void) + GSList *addresses; + + addresses = get_writable_source_path (); ++ if (!addresses) { ++ g_printf("No writable gconf locations found\n"); ++ exit (1); ++ } + engine = gconf_engine_get_local_for_addresses (addresses, NULL); + gconf_address_list_free (addresses); + +@@ -155,7 +160,7 @@ handle_file (const gchar *filename) + + schema_path = g_strsplit (groups[i], ":", 2); + +- schema = g_settings_schema_source_lookup (source, schema_path[0], FALSE); ++ schema = g_settings_schema_source_lookup (source, schema_path[0], TRUE); + if (schema == NULL) + { + if (verbose) +-- +cgit v0.10.1 + diff --git a/gnome-base/gconf/files/gconf-3.2.6-spew-console-error.patch b/gnome-base/gconf/files/gconf-3.2.6-spew-console-error.patch new file mode 100644 index 000000000000..26503f7216ea --- /dev/null +++ b/gnome-base/gconf/files/gconf-3.2.6-spew-console-error.patch @@ -0,0 +1,83 @@ +From b0895e1998ebc83ab030ec0f17c0685439f5b404 Mon Sep 17 00:00:00 2001 +From: Ray Strode +Date: Mon, 15 Apr 2013 09:57:34 -0400 +Subject: dbus: Don't spew to console when unable to connect to dbus daemon + +Instead pass the error up for the caller to decide what to do. + +This prevent untrappable warning messages from showing up at the +console if gconftool --makefile-install-rule is called. + +diff --git a/gconf/gconf-dbus.c b/gconf/gconf-dbus.c +index 5610fcf..048e3ea 100644 +--- a/gconf/gconf-dbus.c ++++ b/gconf/gconf-dbus.c +@@ -105,7 +105,7 @@ static GHashTable *engines_by_db = NULL; + static GHashTable *engines_by_address = NULL; + static gboolean dbus_disconnected = FALSE; + +-static gboolean ensure_dbus_connection (void); ++static gboolean ensure_dbus_connection (GError **error); + static gboolean ensure_service (gboolean start_if_not_found, + GError **err); + static gboolean ensure_database (GConfEngine *conf, +@@ -383,7 +383,7 @@ gconf_engine_detach (GConfEngine *conf) + } + + static gboolean +-ensure_dbus_connection (void) ++ensure_dbus_connection (GError **err) + { + DBusError error; + +@@ -392,7 +392,9 @@ ensure_dbus_connection (void) + + if (dbus_disconnected) + { +- g_warning ("The connection to DBus was broken. Can't reinitialize it."); ++ g_set_error (err, GCONF_ERROR, ++ GCONF_ERROR_NO_SERVER, ++ "The connection to DBus was broken. Can't reinitialize it."); + return FALSE; + } + +@@ -402,7 +404,10 @@ ensure_dbus_connection (void) + + if (!global_conn) + { +- g_warning ("Client failed to connect to the D-BUS daemon:\n%s", error.message); ++ g_set_error (err, GCONF_ERROR, ++ GCONF_ERROR_NO_SERVER, ++ "Client failed to connect to the D-BUS daemon:\n%s", ++ error.message); + + dbus_error_free (&error); + return FALSE; +@@ -431,13 +436,8 @@ ensure_service (gboolean start_if_not_found, + + if (global_conn == NULL) + { +- if (!ensure_dbus_connection ()) +- { +- g_set_error (err, GCONF_ERROR, +- GCONF_ERROR_NO_SERVER, +- _("No D-BUS daemon running\n")); +- return FALSE; +- } ++ if (!ensure_dbus_connection (err)) ++ return FALSE; + + g_assert (global_conn != NULL); + } +@@ -2512,7 +2512,7 @@ gconf_ping_daemon (void) + { + if (global_conn == NULL) + { +- if (!ensure_dbus_connection ()) ++ if (!ensure_dbus_connection (NULL)) + { + return FALSE; + } +-- +cgit v0.10.1 + -- cgit v1.2.3