Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1diff --git a/open-terminal/caja-open-terminal.c b/open-terminal/caja-open-terminal.c 2index e14a9bf..691afab 100644 3--- a/open-terminal/caja-open-terminal.c 4+++ b/open-terminal/caja-open-terminal.c 5@@ -135,8 +135,18 @@ desktop_opens_home_dir (void) 6 { 7 gboolean result; 8 GSettings* settings; 9- 10- settings = g_settings_new (COT_SCHEMA); 11+ GSettingsSchemaSource* schema_source; 12+ GSettingsSchema* schema; 13+ 14+ schema_source = g_settings_schema_source_new_from_directory("@GSETTINGS_PATH@", 15+ g_settings_schema_source_get_default(), 16+ TRUE, NULL); 17+ schema = g_settings_schema_source_lookup(schema_source, 18+ COT_SCHEMA, 19+ FALSE); 20+ settings = g_settings_new_full(schema, NULL, NULL); 21+ g_settings_schema_source_unref(schema_source); 22+ g_settings_schema_unref(schema); 23 result = g_settings_get_boolean (settings, COT_DESKTOP_KEY); 24 g_object_unref (settings); 25 return result; 26@@ -147,8 +157,18 @@ set_desktop_opens_home_dir (gboolean val) 27 { 28 gboolean result; 29 GSettings* settings; 30- 31- settings = g_settings_new (COT_SCHEMA); 32+ GSettingsSchemaSource* schema_source; 33+ GSettingsSchema* schema; 34+ 35+ schema_source = g_settings_schema_source_new_from_directory("@GSETTINGS_PATH@", 36+ g_settings_schema_source_get_default(), 37+ TRUE, NULL); 38+ schema = g_settings_schema_source_lookup(schema_source, 39+ COT_SCHEMA, 40+ FALSE); 41+ settings = g_settings_new_full(schema, NULL, NULL); 42+ g_settings_schema_source_unref(schema_source); 43+ g_settings_schema_unref(schema); 44 result = g_settings_set_boolean (settings, COT_DESKTOP_KEY, val); 45 g_object_unref (settings); 46 return result; 47@@ -159,8 +179,18 @@ desktop_is_home_dir (void) 48 { 49 gboolean result; 50 GSettings* settings; 51- 52- settings = g_settings_new (CAJA_SCHEMA); 53+ GSettingsSchemaSource* schema_source; 54+ GSettingsSchema* schema; 55+ 56+ schema_source = g_settings_schema_source_new_from_directory("@caja_gsetttings_path@", 57+ g_settings_schema_source_get_default(), 58+ TRUE, NULL); 59+ schema = g_settings_schema_source_lookup(schema_source, 60+ CAJA_SCHEMA, 61+ FALSE); 62+ settings = g_settings_new_full(schema, NULL, NULL); 63+ g_settings_schema_source_unref(schema_source); 64+ g_settings_schema_unref(schema); 65 result = g_settings_get_boolean (settings, CAJA_DESKTOP_KEY); 66 g_object_unref (settings); 67 return result; 68@@ -171,8 +201,18 @@ default_terminal_application (void) 69 { 70 gchar *result; 71 GSettings* settings; 72- 73- settings = g_settings_new (TERM_SCHEMA); 74+ GSettingsSchemaSource* schema_source; 75+ GSettingsSchema* schema; 76+ 77+ schema_source = g_settings_schema_source_new_from_directory("@desktop_gsetttings_path@", 78+ g_settings_schema_source_get_default(), 79+ TRUE, NULL); 80+ schema = g_settings_schema_source_lookup(schema_source, 81+ TERM_SCHEMA, 82+ FALSE); 83+ settings = g_settings_new_full(schema, NULL, NULL); 84+ g_settings_schema_source_unref(schema_source); 85+ g_settings_schema_unref(schema); 86 result = g_settings_get_string (settings, TERM_EXEC_KEY); 87 g_object_unref (settings); 88 89@@ -189,8 +229,18 @@ set_default_terminal_application (const gchar* exec) 90 { 91 gboolean result; 92 GSettings* settings; 93- 94- settings = g_settings_new (TERM_SCHEMA); 95+ GSettingsSchemaSource* schema_source; 96+ GSettingsSchema* schema; 97+ 98+ schema_source = g_settings_schema_source_new_from_directory("@desktop_gsetttings_path@", 99+ g_settings_schema_source_get_default(), 100+ TRUE, NULL); 101+ schema = g_settings_schema_source_lookup(schema_source, 102+ TERM_SCHEMA, 103+ FALSE); 104+ settings = g_settings_new_full(schema, NULL, NULL); 105+ g_settings_schema_source_unref(schema_source); 106+ g_settings_schema_unref(schema); 107 result = g_settings_set_string (settings, TERM_EXEC_KEY, exec); 108 g_object_unref (settings); 109 return result; 110diff --git a/sendto/caja-sendto-command.c b/sendto/caja-sendto-command.c 111index 8181db6..579dc81 100644 112--- a/sendto/caja-sendto-command.c 113+++ b/sendto/caja-sendto-command.c 114@@ -801,6 +801,8 @@ caja_sendto_init (void) 115 int main (int argc, char **argv) 116 { 117 GOptionContext *context; 118+ GSettingsSchemaSource* schema_source; 119+ GSettingsSchema* schema; 120 GError *error = NULL; 121 122 #ifdef ENABLE_NLS 123@@ -818,7 +820,15 @@ int main (int argc, char **argv) 124 return 1; 125 } 126 127- settings = g_settings_new ("org.mate.Caja.Sendto"); 128+ schema_source = g_settings_schema_source_new_from_directory("@GSETTINGS_PATH@", 129+ g_settings_schema_source_get_default(), 130+ TRUE, NULL); 131+ schema = g_settings_schema_source_lookup(schema_source, 132+ "org.mate.Caja.Sendto", 133+ FALSE); 134+ settings = g_settings_new_full(schema, NULL, NULL); 135+ g_settings_schema_source_unref(schema_source); 136+ g_settings_schema_unref(schema); 137 caja_sendto_init (); 138 if (caja_sendto_plugin_init () == FALSE) { 139 GtkWidget *error_dialog; 140diff --git a/wallpaper/caja-wallpaper-extension.c b/wallpaper/caja-wallpaper-extension.c 141index 3119e9f..4f80c88 100644 142--- a/wallpaper/caja-wallpaper-extension.c 143+++ b/wallpaper/caja-wallpaper-extension.c 144@@ -47,6 +47,8 @@ set_wallpaper_callback (CajaMenuItem *item, 145 { 146 GList *files; 147 GSettings *settings; 148+ GSettingsSchemaSource* schema_source; 149+ GSettingsSchema* schema; 150 CajaFileInfo *file; 151 gchar *uri; 152 gchar *filename; 153@@ -57,7 +59,15 @@ set_wallpaper_callback (CajaMenuItem *item, 154 uri = caja_file_info_get_uri (file); 155 filename = g_filename_from_uri(uri, NULL, NULL); 156 157- settings = g_settings_new (WP_SCHEMA); 158+ schema_source = g_settings_schema_source_new_from_directory("@desktop_gsetttings_path@", 159+ g_settings_schema_source_get_default(), 160+ TRUE, NULL); 161+ schema = g_settings_schema_source_lookup(schema_source, 162+ WP_SCHEMA, 163+ FALSE); 164+ settings = g_settings_new_full(schema, NULL, NULL); 165+ g_settings_schema_source_unref(schema_source); 166+ g_settings_schema_unref(schema); 167 168 g_settings_set_string (settings, WP_FILE_KEY, filename); 169