diff options
Diffstat (limited to 'source/l/GConf')
5 files changed, 493 insertions, 4 deletions
diff --git a/source/l/GConf/GConf.SlackBuild b/source/l/GConf/GConf.SlackBuild index 2e1b1b5d..727160c3 100755 --- a/source/l/GConf/GConf.SlackBuild +++ b/source/l/GConf/GConf.SlackBuild @@ -24,13 +24,13 @@ PKGNAM=GConf VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} -BUILD=${BUILD:-1} +BUILD=${BUILD:-3} NUMJOBS=${NUMJOBS:--j6} if [ -z "$ARCH" ]; then case "$( uname -m )" in - i?86) ARCH=i486 ;; + i?86) ARCH=i586 ;; arm*) ARCH=arm ;; *) ARCH=$( uname -m ) ;; esac @@ -40,8 +40,8 @@ CWD=$(pwd) TMP=${TMP:-/tmp} PKG=$TMP/package-$PKGNAM -if [ "$ARCH" = "i486" ]; then - SLKCFLAGS="-O2 -march=i486 -mtune=i686" +if [ "$ARCH" = "i586" ]; then + SLKCFLAGS="-O2 -march=i586 -mtune=i686" LIBDIRSUFFIX="" elif [ "$ARCH" = "x86_64" ]; then SLKCFLAGS="-O2 -fPIC" @@ -64,7 +64,12 @@ find . \ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ -exec chmod 644 {} \; +zcat $CWD/patches/0001-mconvert-enable-recursive-scheme-lookup-and-fix-a-cr.patch.gz | patch -p1 --verbose || exit 1 +zcat $CWD/patches/0002-dbus-Don-t-spew-to-console-when-unable-to-connect-to.patch.gz | patch -p1 --verbose || exit 1 +zcat $CWD/patches/0003-gsettings-data-convert-Warn-and-fix-invalid-schema-p.patch.gz | patch -p1 --verbose || exit 1 + # This should be fixed in 3.2.6, I hope - it's a bug exposed by glib-2.32 +# (but it wasn't) sed -i '/INTROSPECTION_SCANNER_ARGS/s#$# -lgmodule-2.0#' gconf/Makefile.in # --disable-orbit means we use DBUS for IPC diff --git a/source/l/GConf/patches/0001-mconvert-enable-recursive-scheme-lookup-and-fix-a-cr.patch b/source/l/GConf/patches/0001-mconvert-enable-recursive-scheme-lookup-and-fix-a-cr.patch new file mode 100644 index 00000000..7d3a1159 --- /dev/null +++ b/source/l/GConf/patches/0001-mconvert-enable-recursive-scheme-lookup-and-fix-a-cr.patch @@ -0,0 +1,49 @@ +From 98ff7acca7595f508b094506195aeffaf2e8b74c Mon Sep 17 00:00:00 2001 +From: Stefan Sauer <ensonic@users.sf.net> +Date: Wed, 23 Jan 2013 08:11:18 +0100 +Subject: [PATCH 01/11] 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). +--- + gsettings/gsettings-data-convert.c | 7 ++++++- + 1 file changed, 6 insertions(+), 1 deletion(-) + +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 <string.h> + #include <sys/types.h> + #include <sys/stat.h> ++#include <stdlib.h> + #include <unistd.h> + #include <errno.h> + +@@ -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) +-- +2.6.4 + diff --git a/source/l/GConf/patches/0002-dbus-Don-t-spew-to-console-when-unable-to-connect-to.patch b/source/l/GConf/patches/0002-dbus-Don-t-spew-to-console-when-unable-to-connect-to.patch new file mode 100644 index 00000000..25dc4456 --- /dev/null +++ b/source/l/GConf/patches/0002-dbus-Don-t-spew-to-console-when-unable-to-connect-to.patch @@ -0,0 +1,87 @@ +From b0895e1998ebc83ab030ec0f17c0685439f5b404 Mon Sep 17 00:00:00 2001 +From: Ray Strode <rstrode@redhat.com> +Date: Mon, 15 Apr 2013 09:57:34 -0400 +Subject: [PATCH 02/11] 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. +--- + gconf/gconf-dbus.c | 24 ++++++++++++------------ + 1 file changed, 12 insertions(+), 12 deletions(-) + +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; + } +-- +2.6.4 + diff --git a/source/l/GConf/patches/0003-gsettings-data-convert-Warn-and-fix-invalid-schema-p.patch b/source/l/GConf/patches/0003-gsettings-data-convert-Warn-and-fix-invalid-schema-p.patch new file mode 100644 index 00000000..130c2bf3 --- /dev/null +++ b/source/l/GConf/patches/0003-gsettings-data-convert-Warn-and-fix-invalid-schema-p.patch @@ -0,0 +1,45 @@ +From 405f865c07261a95c8c9a09a84ab679c6dd0a330 Mon Sep 17 00:00:00 2001 +From: Colin Walters <walters@verbum.org> +Date: Thu, 24 Oct 2013 16:27:24 -0400 +Subject: [PATCH 03/11] 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 +--- + gsettings/gsettings-data-convert.c | 18 +++++++++++++++++- + 1 file changed, 17 insertions(+), 1 deletion(-) + +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]); + +-- +2.6.4 + diff --git a/source/l/GConf/patches/0011-Fix-some-compiler-warnings.patch b/source/l/GConf/patches/0011-Fix-some-compiler-warnings.patch new file mode 100644 index 00000000..7595b3fa --- /dev/null +++ b/source/l/GConf/patches/0011-Fix-some-compiler-warnings.patch @@ -0,0 +1,303 @@ +From 0780809731c8ab1c364202b1900d3df106b28626 Mon Sep 17 00:00:00 2001 +From: Robert Ancell <robert.ancell@canonical.com> +Date: Wed, 14 Oct 2015 10:09:49 +0100 +Subject: [PATCH 11/11] Fix some compiler warnings + +--- + backends/markup-tree.c | 3 +-- + backends/xml-entry.c | 11 ++++------- + backends/xml-test.c | 4 +--- + defaults/gconf-defaults-main.c | 4 +--- + defaults/gconf-defaults.c | 5 +---- + examples/basic-gconf-app.c | 10 +++++----- + examples/complex-gconf-app.c | 6 +++--- + gconf/gconf-client.c | 2 -- + gconf/gconf-internals.c | 2 -- + gconf/gconfd.c | 4 ---- + gconf/gconftool.c | 2 -- + gconf/testgconfclient.c | 4 ++-- + gsettings/gsettings-data-convert.c | 2 -- + 13 files changed, 18 insertions(+), 41 deletions(-) + +diff --git a/backends/markup-tree.c b/backends/markup-tree.c +index 4857cae..be975f4 100644 +--- a/backends/markup-tree.c ++++ b/backends/markup-tree.c +@@ -3116,11 +3116,10 @@ parse_li_element (GMarkupParseContext *context, + ParseInfo *info, + GError **error) + { +- ParseState current_state; + GConfValue *value; + GConfValue *list; + +- current_state = peek_state (info); ++ peek_state (info); + + push_state (info, STATE_LI); + +diff --git a/backends/xml-entry.c b/backends/xml-entry.c +index 738883f..129c032 100644 +--- a/backends/xml-entry.c ++++ b/backends/xml-entry.c +@@ -498,10 +498,8 @@ node_set_schema_value(xmlNodePtr node, + + if (gconf_schema_get_long_desc (sc)) + { +- xmlNodePtr ld_node; +- +- ld_node = xmlNewChild(found, NULL, (xmlChar *)"longdesc", +- (xmlChar *)gconf_schema_get_long_desc (sc)); ++ xmlNewChild(found, NULL, (xmlChar *)"longdesc", ++ (xmlChar *)gconf_schema_get_long_desc (sc)); + } + } + +@@ -536,7 +534,6 @@ node_set_value(xmlNodePtr node, GConfValue* value) + break; + case GCONF_VALUE_STRING: + { +- xmlNodePtr child; + xmlChar* encoded; + + free_childs(node); +@@ -544,8 +541,8 @@ node_set_value(xmlNodePtr node, GConfValue* value) + encoded = xmlEncodeEntitiesReentrant(node->doc, + (xmlChar *)gconf_value_get_string(value)); + +- child = xmlNewChild(node, NULL, (xmlChar *)"stringvalue", +- encoded); ++ xmlNewChild(node, NULL, (xmlChar *)"stringvalue", ++ encoded); + xmlFree(encoded); + } + break; +diff --git a/backends/xml-test.c b/backends/xml-test.c +index 687d558..a57fc00 100644 +--- a/backends/xml-test.c ++++ b/backends/xml-test.c +@@ -33,9 +33,7 @@ GConfBackendVTable* gconf_backend_get_vtable (void); + int + main (int argc, char **argv) + { +- GConfBackendVTable *vtable; +- +- vtable = gconf_backend_get_vtable (); ++ gconf_backend_get_vtable (); + + xml_test_entry (); + xml_test_dir (); +diff --git a/defaults/gconf-defaults-main.c b/defaults/gconf-defaults-main.c +index 7ed7700..aad76c3 100644 +--- a/defaults/gconf-defaults-main.c ++++ b/defaults/gconf-defaults-main.c +@@ -107,7 +107,6 @@ get_system_bus (void) + { + GError *error; + DBusGConnection *bus; +- DBusConnection *connection; + + error = NULL; + bus = dbus_g_bus_get (DBUS_BUS_SYSTEM, &error); +@@ -117,7 +116,7 @@ get_system_bus (void) + goto out; + } + +- connection = dbus_g_connection_get_connection (bus); ++ dbus_g_connection_get_connection (bus); + out: + return bus; + } +@@ -162,7 +161,6 @@ main (int argc, char **argv) + g_thread_init (NULL); + } + dbus_g_thread_init (); +- g_type_init (); + + options = g_option_context_new (NULL); + g_option_context_add_main_entries (options, entries, NULL); +diff --git a/defaults/gconf-defaults.c b/defaults/gconf-defaults.c +index b84c632..76aa7e9 100644 +--- a/defaults/gconf-defaults.c ++++ b/defaults/gconf-defaults.c +@@ -156,9 +156,6 @@ gconf_defaults_constructor (GType type, + GObjectConstructParam *construct_properties) + { + GConfDefaults *mechanism; +- GConfDefaultsClass *klass; +- +- klass = GCONF_DEFAULTS_CLASS (g_type_class_peek (GCONF_TYPE_DEFAULTS)); + + mechanism = GCONF_DEFAULTS (G_OBJECT_CLASS (gconf_defaults_parent_class)->constructor ( + type, +@@ -228,7 +225,7 @@ register_mechanism (GConfDefaults *mechanism) + { + GError *error = NULL; + +- mechanism->priv->auth = polkit_authority_get (); ++ mechanism->priv->auth = polkit_authority_get_sync (NULL, NULL); + + error = NULL; + mechanism->priv->system_bus_connection = dbus_g_bus_get (DBUS_BUS_SYSTEM, &error); +diff --git a/examples/basic-gconf-app.c b/examples/basic-gconf-app.c +index a866520..3045ff9 100644 +--- a/examples/basic-gconf-app.c ++++ b/examples/basic-gconf-app.c +@@ -289,7 +289,7 @@ create_main_window (GConfClient *client) + + gtk_window_set_title (GTK_WINDOW (w), "basic-gconf-app Main Window"); + +- vbox = gtk_vbox_new (FALSE, 5); ++ vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 5); + + gtk_container_add (GTK_CONTAINER (w), vbox); + +@@ -375,7 +375,7 @@ create_config_entry (GtkWidget *prefs_dialog, + GtkWidget *label; + char *str; + +- hbox = gtk_hbox_new (FALSE, 5); ++ hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 5); + + label = gtk_label_new (config_key); + +@@ -437,7 +437,7 @@ create_prefs_dialog (GtkWidget *parent, + dialog = gtk_dialog_new_with_buttons ("basic-gconf-app Preferences", + GTK_WINDOW (parent), + 0, +- GTK_STOCK_CLOSE, ++ "_Close", + GTK_RESPONSE_ACCEPT, + NULL); + +@@ -451,11 +451,11 @@ create_prefs_dialog (GtkWidget *parent, + /* resizing doesn't grow the entries anyhow */ + gtk_window_set_resizable (GTK_WINDOW (dialog), FALSE); + +- vbox = gtk_vbox_new (FALSE, 5); ++ vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 5); + + gtk_container_set_border_width (GTK_CONTAINER (vbox), 5); + +- gtk_box_pack_start (GTK_BOX (gtk_dialog_get_content_area(dialog)), ++ gtk_box_pack_start (GTK_BOX (gtk_dialog_get_content_area(GTK_DIALOG(dialog))), + vbox, TRUE, TRUE, 0); + + entry = create_config_entry (dialog, client, "/apps/basic-gconf-app/foo", +diff --git a/examples/complex-gconf-app.c b/examples/complex-gconf-app.c +index 567989c..0702673 100644 +--- a/examples/complex-gconf-app.c ++++ b/examples/complex-gconf-app.c +@@ -246,7 +246,7 @@ create_main_window(GConfClient* client) + + w = gtk_window_new(GTK_WINDOW_TOPLEVEL); + +- vbox = gtk_vbox_new(FALSE, 10); ++ vbox = gtk_box_new(GTK_ORIENTATION_VERTICAL, 10); + + gtk_container_add(GTK_CONTAINER(w), vbox); + +@@ -620,9 +620,9 @@ create_prefs_dialog(GtkWidget* parent, GConfClient* client) + + bbox = gtk_hbutton_box_new(); + +- vbox_outer = gtk_vbox_new(FALSE, 10); ++ vbox_outer = gtk_box_new(GTK_ORIENTATION_VERTICAL, 10); + +- vbox_inner = gtk_vbox_new(FALSE, 10); ++ vbox_inner = gtk_box_new(GTK_ORIENTATION_VERTICAL, 10); + + gtk_container_add(GTK_CONTAINER(dialog), vbox_outer); + +diff --git a/gconf/gconf-client.c b/gconf/gconf-client.c +index 16be032..3c8ba50 100644 +--- a/gconf/gconf-client.c ++++ b/gconf/gconf-client.c +@@ -442,8 +442,6 @@ notify_from_server_callback (GConfEngine* conf, guint cnxn_id, + * #GConfClient, this function returns the same one they're using, but + * with the reference count incremented. So you have to unref either way. + * +- * It's important to call g_type_init() before using this GObject, to initialize the type system. +- * + * Return value: (transfer full): a new #GConfClient. g_object_unref() when you're done. + */ + GConfClient* +diff --git a/gconf/gconf-internals.c b/gconf/gconf-internals.c +index 1b4452a..ecb3179 100644 +--- a/gconf/gconf-internals.c ++++ b/gconf/gconf-internals.c +@@ -2483,8 +2483,6 @@ get_ior (gboolean start_if_not_found, + return NULL; + } + +- g_type_init (); +- + connection = g_bus_get_sync (G_BUS_TYPE_SESSION, NULL, &error); + if (connection == NULL) { + if (failure_log) +diff --git a/gconf/gconfd.c b/gconf/gconfd.c +index 1ed3d08..97647b5 100644 +--- a/gconf/gconfd.c ++++ b/gconf/gconfd.c +@@ -682,10 +682,6 @@ system_bus_message_handler (DBusConnection *connection, + DBusMessage *message, + void *user_data) + { +- DBusMessage *reply; +- +- reply = NULL; +- + if (dbus_message_is_signal (message, + "org.gnome.GConf.Defaults", + "SystemSet")) +diff --git a/gconf/gconftool.c b/gconf/gconftool.c +index 94274af..1f09601 100644 +--- a/gconf/gconftool.c ++++ b/gconf/gconftool.c +@@ -578,8 +578,6 @@ main (int argc, char** argv) + bindtextdomain (GETTEXT_PACKAGE,GCONF_LOCALE_DIR); + textdomain (GETTEXT_PACKAGE); + +- g_thread_init (NULL); +- + _gconf_init_i18n (); + + context = g_option_context_new (N_("- Tool to manipulate a GConf configuration")); +diff --git a/gconf/testgconfclient.c b/gconf/testgconfclient.c +index 7058bbb..f17b85f 100644 +--- a/gconf/testgconfclient.c ++++ b/gconf/testgconfclient.c +@@ -131,7 +131,7 @@ entry_attached_to(GConfClient* client, const gchar* key) + G_CALLBACK(entry_destroyed_callback), + client); + +- hbox = gtk_hbox_new(FALSE, 10); ++ hbox = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 10); + + label = gtk_label_new(key); + +@@ -268,7 +268,7 @@ create_controls(GConfClient* client) + g_signal_connect(G_OBJECT(win), "destroy", + G_CALLBACK(destroy_callback), client); + +- vbox = gtk_vbox_new(FALSE, 10); ++ vbox = gtk_box_new(GTK_ORIENTATION_VERTICAL, 10); + + gtk_container_add(GTK_CONTAINER(win), vbox); + +diff --git a/gsettings/gsettings-data-convert.c b/gsettings/gsettings-data-convert.c +index 160ed41..ced04c7 100644 +--- a/gsettings/gsettings-data-convert.c ++++ b/gsettings/gsettings-data-convert.c +@@ -638,8 +638,6 @@ main (int argc, char *argv[]) + { NULL } + }; + +- g_type_init(); +- + context = g_option_context_new (""); + + g_option_context_set_summary (context, +-- +2.6.4 + |