diff options
author | coadde [Márcio Alexandre Silva Delgado] <coadde@parabola.nu> | 2016-04-13 15:35:21 -0300 |
---|---|---|
committer | coadde [Márcio Alexandre Silva Delgado] <coadde@parabola.nu> | 2016-04-16 10:22:52 -0300 |
commit | 0a7a56e0e5954a3414e0a7763581949edcc20c8f (patch) | |
tree | 7abb504a962d89eaa27568aabfbd0d80758bbe38 /libre/glib2-static/0001-gsettings-Don-t-crash-when-no-schemas-are-installed.patch | |
parent | fa98ccf42a1f4f8b2fb536400c5048530c45355e (diff) | |
download | abslibre-0a7a56e0e5954a3414e0a7763581949edcc20c8f.tar.gz abslibre-0a7a56e0e5954a3414e0a7763581949edcc20c8f.tar.bz2 abslibre-0a7a56e0e5954a3414e0a7763581949edcc20c8f.zip |
glib2-static: add new package to [libre]
Diffstat (limited to 'libre/glib2-static/0001-gsettings-Don-t-crash-when-no-schemas-are-installed.patch')
-rw-r--r-- | libre/glib2-static/0001-gsettings-Don-t-crash-when-no-schemas-are-installed.patch | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/libre/glib2-static/0001-gsettings-Don-t-crash-when-no-schemas-are-installed.patch b/libre/glib2-static/0001-gsettings-Don-t-crash-when-no-schemas-are-installed.patch new file mode 100644 index 000000000..44a56101d --- /dev/null +++ b/libre/glib2-static/0001-gsettings-Don-t-crash-when-no-schemas-are-installed.patch @@ -0,0 +1,49 @@ +From 4850cb55d3415b7d95c80c80ceb60f221f5dddf5 Mon Sep 17 00:00:00 2001 +From: "Jan Alexander Steffens (heftig)" <jan.steffens@gmail.com> +Date: Wed, 24 Feb 2016 18:58:25 +0100 +Subject: [PATCH] gsettings: Don't crash when no schemas are installed + +Still doesn't behave well ("gsettings help" causes an error), +but at least there's no segfault anymore. +--- + gio/gsettings-tool.c | 10 ++++++++-- + 1 file changed, 8 insertions(+), 2 deletions(-) + +diff --git a/gio/gsettings-tool.c b/gio/gsettings-tool.c +index 6a302ce..0026f55 100644 +--- a/gio/gsettings-tool.c ++++ b/gio/gsettings-tool.c +@@ -697,7 +697,7 @@ main (int argc, char **argv) + if (argc < 2) + return gsettings_help (FALSE, NULL); + +- global_schema_source = g_settings_schema_source_ref (g_settings_schema_source_get_default ()); ++ global_schema_source = g_settings_schema_source_get_default (); + + if (argc > 3 && g_str_equal (argv[1], "--schemadir")) + { +@@ -705,7 +705,6 @@ main (int argc, char **argv) + GError *error = NULL; + + global_schema_source = g_settings_schema_source_new_from_directory (argv[2], parent, FALSE, &error); +- g_settings_schema_source_unref (parent); + + if (global_schema_source == NULL) + { +@@ -719,6 +718,13 @@ main (int argc, char **argv) + argv = argv + 2; + argc -= 2; + } ++ else if (global_schema_source == NULL) ++ { ++ g_printerr (_("No schemas installed\n")); ++ return 1; ++ } ++ else ++ g_settings_schema_source_ref (global_schema_source); + + need_settings = TRUE; + +-- +2.7.1 + |