mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2025-03-27 18:10:03 +01:00
gsettings-tool: Always use the global_schema_source to lookup schemas in list-recursively
When listing schemas from a specified directory, explicitly create the GSettings object from the schema, don't allow g_settings_new to do the usual lookup. That lookup fails if no other schemas are installed in the default directories. Fixes #3429.
This commit is contained in:
parent
2a4f7b8421
commit
018581adb5
@ -324,10 +324,15 @@ gsettings_list_recursively (void)
|
||||
for (i = 0; schemas[i]; i++)
|
||||
{
|
||||
GSettings *settings;
|
||||
GSettingsSchema *schema;
|
||||
|
||||
settings = g_settings_new (schemas[i]);
|
||||
schema = g_settings_schema_source_lookup (global_schema_source, schemas[i], FALSE);
|
||||
if (!schema)
|
||||
continue;
|
||||
settings = g_settings_new_full (schema, NULL, NULL);
|
||||
list_recursively (settings);
|
||||
g_object_unref (settings);
|
||||
g_settings_schema_unref (schema);
|
||||
}
|
||||
|
||||
g_strfreev (schemas);
|
||||
|
Loading…
x
Reference in New Issue
Block a user