at 24.11-pre 652 lines 26 kB view raw
1diff --git a/src/addressbook/libebook/e-book-client.c b/src/addressbook/libebook/e-book-client.c 2index 5e65ec8..8ca28c6 100644 3--- a/src/addressbook/libebook/e-book-client.c 4+++ b/src/addressbook/libebook/e-book-client.c 5@@ -1924,7 +1924,18 @@ e_book_client_get_self (ESourceRegistry *registry, 6 7 *out_client = book_client; 8 9- settings = g_settings_new (SELF_UID_PATH_ID); 10+ { 11+ g_autoptr(GSettingsSchemaSource) schema_source; 12+ g_autoptr(GSettingsSchema) schema; 13+ schema_source = g_settings_schema_source_new_from_directory("@EDS@", 14+ g_settings_schema_source_get_default(), 15+ TRUE, 16+ NULL); 17+ schema = g_settings_schema_source_lookup(schema_source, 18+ SELF_UID_PATH_ID, 19+ FALSE); 20+ settings = g_settings_new_full(schema, NULL, NULL); 21+ } 22 uid = g_settings_get_string (settings, SELF_UID_KEY); 23 g_object_unref (settings); 24 25@@ -1992,7 +2003,18 @@ e_book_client_set_self (EBookClient *client, 26 g_return_val_if_fail ( 27 e_contact_get_const (contact, E_CONTACT_UID) != NULL, FALSE); 28 29- settings = g_settings_new (SELF_UID_PATH_ID); 30+ { 31+ g_autoptr(GSettingsSchemaSource) schema_source; 32+ g_autoptr(GSettingsSchema) schema; 33+ schema_source = g_settings_schema_source_new_from_directory("@EDS@", 34+ g_settings_schema_source_get_default(), 35+ TRUE, 36+ NULL); 37+ schema = g_settings_schema_source_lookup(schema_source, 38+ SELF_UID_PATH_ID, 39+ FALSE); 40+ settings = g_settings_new_full(schema, NULL, NULL); 41+ } 42 g_settings_set_string ( 43 settings, SELF_UID_KEY, 44 e_contact_get_const (contact, E_CONTACT_UID)); 45@@ -2028,8 +2050,18 @@ e_book_client_is_self (EContact *contact) 46 * unfortunately the API doesn't allow that. 47 */ 48 g_mutex_lock (&mutex); 49- if (!settings) 50- settings = g_settings_new (SELF_UID_PATH_ID); 51+ if (!settings) { 52+ g_autoptr(GSettingsSchemaSource) schema_source; 53+ g_autoptr(GSettingsSchema) schema; 54+ schema_source = g_settings_schema_source_new_from_directory("@EDS@", 55+ g_settings_schema_source_get_default(), 56+ TRUE, 57+ NULL); 58+ schema = g_settings_schema_source_lookup(schema_source, 59+ SELF_UID_PATH_ID, 60+ FALSE); 61+ settings = g_settings_new_full(schema, NULL, NULL); 62+ } 63 uid = g_settings_get_string (settings, SELF_UID_KEY); 64 g_mutex_unlock (&mutex); 65 66diff --git a/src/addressbook/libebook/e-book.c b/src/addressbook/libebook/e-book.c 67index e85a56b..59d3fe2 100644 68--- a/src/addressbook/libebook/e-book.c 69+++ b/src/addressbook/libebook/e-book.c 70@@ -2587,7 +2587,18 @@ e_book_get_self (ESourceRegistry *registry, 71 return FALSE; 72 } 73 74- settings = g_settings_new (SELF_UID_PATH_ID); 75+ { 76+ g_autoptr(GSettingsSchemaSource) schema_source; 77+ g_autoptr(GSettingsSchema) schema; 78+ schema_source = g_settings_schema_source_new_from_directory("@EDS@", 79+ g_settings_schema_source_get_default(), 80+ TRUE, 81+ NULL); 82+ schema = g_settings_schema_source_lookup(schema_source, 83+ SELF_UID_PATH_ID, 84+ FALSE); 85+ settings = g_settings_new_full(schema, NULL, NULL); 86+ } 87 uid = g_settings_get_string (settings, SELF_UID_KEY); 88 g_object_unref (settings); 89 90@@ -2642,7 +2653,18 @@ e_book_set_self (EBook *book, 91 g_return_val_if_fail (E_IS_BOOK (book), FALSE); 92 g_return_val_if_fail (E_IS_CONTACT (contact), FALSE); 93 94- settings = g_settings_new (SELF_UID_PATH_ID); 95+ { 96+ g_autoptr(GSettingsSchemaSource) schema_source; 97+ g_autoptr(GSettingsSchema) schema; 98+ schema_source = g_settings_schema_source_new_from_directory("@EDS@", 99+ g_settings_schema_source_get_default(), 100+ TRUE, 101+ NULL); 102+ schema = g_settings_schema_source_lookup(schema_source, 103+ SELF_UID_PATH_ID, 104+ FALSE); 105+ settings = g_settings_new_full(schema, NULL, NULL); 106+ } 107 g_settings_set_string ( 108 settings, SELF_UID_KEY, 109 e_contact_get_const (contact, E_CONTACT_UID)); 110@@ -2670,7 +2692,18 @@ e_book_is_self (EContact *contact) 111 112 g_return_val_if_fail (E_IS_CONTACT (contact), FALSE); 113 114- settings = g_settings_new (SELF_UID_PATH_ID); 115+ { 116+ g_autoptr(GSettingsSchemaSource) schema_source; 117+ g_autoptr(GSettingsSchema) schema; 118+ schema_source = g_settings_schema_source_new_from_directory("@EDS@", 119+ g_settings_schema_source_get_default(), 120+ TRUE, 121+ NULL); 122+ schema = g_settings_schema_source_lookup(schema_source, 123+ SELF_UID_PATH_ID, 124+ FALSE); 125+ settings = g_settings_new_full(schema, NULL, NULL); 126+ } 127 uid = g_settings_get_string (settings, SELF_UID_KEY); 128 g_object_unref (settings); 129 130diff --git a/src/addressbook/libedata-book/e-book-meta-backend.c b/src/addressbook/libedata-book/e-book-meta-backend.c 131index 5b4debf..77c8d9c 100644 132--- a/src/addressbook/libedata-book/e-book-meta-backend.c 133+++ b/src/addressbook/libedata-book/e-book-meta-backend.c 134@@ -144,7 +144,18 @@ ebmb_is_power_saver_enabled (void) 135 GSettings *settings; 136 gboolean enabled = FALSE; 137 138- settings = g_settings_new ("org.gnome.evolution-data-server"); 139+ { 140+ g_autoptr(GSettingsSchemaSource) schema_source; 141+ g_autoptr(GSettingsSchema) schema; 142+ schema_source = g_settings_schema_source_new_from_directory("@EDS@", 143+ g_settings_schema_source_get_default(), 144+ TRUE, 145+ NULL); 146+ schema = g_settings_schema_source_lookup(schema_source, 147+ "org.gnome.evolution-data-server", 148+ FALSE); 149+ settings = g_settings_new_full(schema, NULL, NULL); 150+ } 151 152 if (g_settings_get_boolean (settings, "limit-operations-in-power-saver-mode")) { 153 GPowerProfileMonitor *power_monitor; 154diff --git a/src/calendar/backends/contacts/e-cal-backend-contacts.c b/src/calendar/backends/contacts/e-cal-backend-contacts.c 155index 43bd383..4dce824 100644 156--- a/src/calendar/backends/contacts/e-cal-backend-contacts.c 157+++ b/src/calendar/backends/contacts/e-cal-backend-contacts.c 158@@ -1369,7 +1369,18 @@ e_cal_backend_contacts_init (ECalBackendContacts *cbc) 159 (GDestroyNotify) g_free, 160 (GDestroyNotify) contact_record_free); 161 162- cbc->priv->settings = g_settings_new ("org.gnome.evolution-data-server.calendar"); 163+ { 164+ g_autoptr(GSettingsSchemaSource) schema_source; 165+ g_autoptr(GSettingsSchema) schema; 166+ schema_source = g_settings_schema_source_new_from_directory("@EDS@", 167+ g_settings_schema_source_get_default(), 168+ TRUE, 169+ NULL); 170+ schema = g_settings_schema_source_lookup(schema_source, 171+ "org.gnome.evolution-data-server.calendar", 172+ FALSE); 173+ cbc->priv->settings = g_settings_new_full(schema, NULL, NULL); 174+ } 175 cbc->priv->notifyid = 0; 176 cbc->priv->update_alarms_id = 0; 177 cbc->priv->alarm_enabled = FALSE; 178diff --git a/src/calendar/backends/file/e-cal-backend-file.c b/src/calendar/backends/file/e-cal-backend-file.c 179index 2525856..7ecc1a8 100644 180--- a/src/calendar/backends/file/e-cal-backend-file.c 181+++ b/src/calendar/backends/file/e-cal-backend-file.c 182@@ -3682,7 +3682,20 @@ e_cal_backend_file_receive_objects (ECalBackendSync *backend, 183 if (is_declined) { 184 GSettings *settings; 185 186- settings = g_settings_new ("org.gnome.evolution-data-server.calendar"); 187+ { 188+ g_autoptr(GSettingsSchemaSource) schema_source; 189+ g_autoptr(GSettingsSchema) schema; 190+ schema_source = g_settings_schema_source_new_from_directory("@EDS@", 191+ g_settings_schema_source_get_default(), 192+ TRUE, 193+ NULL); 194+ schema = g_settings_schema_source_lookup(schema_source, 195+ "org.gnome.evolution-data-server.calendar", 196+ FALSE); 197+ settings = g_settings_new_full(schema, 198+ NULL, 199+ NULL); 200+ } 201 can_delete = g_settings_get_boolean (settings, "delete-meeting-on-decline"); 202 g_clear_object (&settings); 203 } 204diff --git a/src/calendar/libecal/e-reminder-watcher.c b/src/calendar/libecal/e-reminder-watcher.c 205index 44ba49c..dfac2a2 100644 206--- a/src/calendar/libecal/e-reminder-watcher.c 207+++ b/src/calendar/libecal/e-reminder-watcher.c 208@@ -2826,8 +2826,33 @@ e_reminder_watcher_init (EReminderWatcher *watcher) 209 210 watcher->priv = e_reminder_watcher_get_instance_private (watcher); 211 watcher->priv->cancellable = g_cancellable_new (); 212- watcher->priv->settings = g_settings_new ("org.gnome.evolution-data-server.calendar"); 213- watcher->priv->desktop_settings = g_settings_new ("org.gnome.desktop.interface"); 214+ { 215+ g_autoptr(GSettingsSchemaSource) schema_source; 216+ g_autoptr(GSettingsSchema) schema; 217+ schema_source = g_settings_schema_source_new_from_directory("@EDS@", 218+ g_settings_schema_source_get_default(), 219+ TRUE, 220+ NULL); 221+ schema = g_settings_schema_source_lookup(schema_source, 222+ "org.gnome.evolution-data-server.calendar", 223+ FALSE); 224+ watcher->priv->settings = g_settings_new_full(schema, NULL, 225+ NULL); 226+ } 227+ { 228+ g_autoptr(GSettingsSchemaSource) schema_source; 229+ g_autoptr(GSettingsSchema) schema; 230+ schema_source = g_settings_schema_source_new_from_directory("@GDS@", 231+ g_settings_schema_source_get_default(), 232+ TRUE, 233+ NULL); 234+ schema = g_settings_schema_source_lookup(schema_source, 235+ "org.gnome.desktop.interface", 236+ FALSE); 237+ watcher->priv->desktop_settings = g_settings_new_full(schema, 238+ NULL, 239+ NULL); 240+ } 241 if (watcher->priv->desktop_settings) { 242 g_signal_connect_object ( 243 watcher->priv->desktop_settings, 244diff --git a/src/calendar/libedata-cal/e-cal-meta-backend.c b/src/calendar/libedata-cal/e-cal-meta-backend.c 245index b9145af..350fcd3 100644 246--- a/src/calendar/libedata-cal/e-cal-meta-backend.c 247+++ b/src/calendar/libedata-cal/e-cal-meta-backend.c 248@@ -156,7 +156,18 @@ ecmb_is_power_saver_enabled (void) 249 GSettings *settings; 250 gboolean enabled = FALSE; 251 252- settings = g_settings_new ("org.gnome.evolution-data-server"); 253+ { 254+ g_autoptr(GSettingsSchemaSource) schema_source; 255+ g_autoptr(GSettingsSchema) schema; 256+ schema_source = g_settings_schema_source_new_from_directory("@EDS@", 257+ g_settings_schema_source_get_default(), 258+ TRUE, 259+ NULL); 260+ schema = g_settings_schema_source_lookup(schema_source, 261+ "org.gnome.evolution-data-server", 262+ FALSE); 263+ settings = g_settings_new_full(schema, NULL, NULL); 264+ } 265 266 if (g_settings_get_boolean (settings, "limit-operations-in-power-saver-mode")) { 267 GPowerProfileMonitor *power_monitor; 268@@ -2632,7 +2643,20 @@ ecmb_receive_object_sync (ECalMetaBackend *meta_backend, 269 if (is_declined) { 270 GSettings *settings; 271 272- settings = g_settings_new ("org.gnome.evolution-data-server.calendar"); 273+ { 274+ g_autoptr(GSettingsSchemaSource) schema_source; 275+ g_autoptr(GSettingsSchema) schema; 276+ schema_source = g_settings_schema_source_new_from_directory("@EDS@", 277+ g_settings_schema_source_get_default(), 278+ TRUE, 279+ NULL); 280+ schema = g_settings_schema_source_lookup(schema_source, 281+ "org.gnome.evolution-data-server.calendar", 282+ FALSE); 283+ settings = g_settings_new_full(schema, 284+ NULL, 285+ NULL); 286+ } 287 is_declined = g_settings_get_boolean (settings, "delete-meeting-on-decline"); 288 g_clear_object (&settings); 289 } 290diff --git a/src/camel/camel-cipher-context.c b/src/camel/camel-cipher-context.c 291index d5a0823..2ae03f8 100644 292--- a/src/camel/camel-cipher-context.c 293+++ b/src/camel/camel-cipher-context.c 294@@ -1631,7 +1631,18 @@ camel_cipher_can_load_photos (void) 295 GSettings *settings; 296 gboolean load_photos; 297 298- settings = g_settings_new ("org.gnome.evolution-data-server"); 299+ { 300+ g_autoptr(GSettingsSchemaSource) schema_source; 301+ g_autoptr(GSettingsSchema) schema; 302+ schema_source = g_settings_schema_source_new_from_directory("@EDS@", 303+ g_settings_schema_source_get_default(), 304+ TRUE, 305+ NULL); 306+ schema = g_settings_schema_source_lookup(schema_source, 307+ "org.gnome.evolution-data-server", 308+ FALSE); 309+ settings = g_settings_new_full(schema, NULL, NULL); 310+ } 311 load_photos = g_settings_get_boolean (settings, "camel-cipher-load-photos"); 312 g_clear_object (&settings); 313 314diff --git a/src/camel/camel-gpg-context.c b/src/camel/camel-gpg-context.c 315index cecd740..9a15180 100644 316--- a/src/camel/camel-gpg-context.c 317+++ b/src/camel/camel-gpg-context.c 318@@ -747,7 +747,18 @@ gpg_ctx_get_executable_name (void) 319 GSettings *settings; 320 gchar *path; 321 322- settings = g_settings_new ("org.gnome.evolution-data-server"); 323+ { 324+ g_autoptr(GSettingsSchemaSource) schema_source; 325+ g_autoptr(GSettingsSchema) schema; 326+ schema_source = g_settings_schema_source_new_from_directory("@EDS@", 327+ g_settings_schema_source_get_default(), 328+ TRUE, 329+ NULL); 330+ schema = g_settings_schema_source_lookup(schema_source, 331+ "org.gnome.evolution-data-server", 332+ FALSE); 333+ settings = g_settings_new_full(schema, NULL, NULL); 334+ } 335 path = g_settings_get_string (settings, "camel-gpg-binary"); 336 g_clear_object (&settings); 337 338diff --git a/src/camel/camel-utils.c b/src/camel/camel-utils.c 339index e61160c..b6553a4 100644 340--- a/src/camel/camel-utils.c 341+++ b/src/camel/camel-utils.c 342@@ -362,7 +362,19 @@ void 343 _camel_utils_initialize (void) 344 { 345 G_LOCK (mi_user_headers); 346- mi_user_headers_settings = g_settings_new ("org.gnome.evolution-data-server"); 347+ { 348+ g_autoptr(GSettingsSchemaSource) schema_source; 349+ g_autoptr(GSettingsSchema) schema; 350+ schema_source = g_settings_schema_source_new_from_directory("@EDS@", 351+ g_settings_schema_source_get_default(), 352+ TRUE, 353+ NULL); 354+ schema = g_settings_schema_source_lookup(schema_source, 355+ "org.gnome.evolution-data-server", 356+ FALSE); 357+ mi_user_headers_settings = g_settings_new_full(schema, NULL, 358+ NULL); 359+ } 360 g_signal_connect (mi_user_headers_settings, "changed::camel-message-info-user-headers", 361 G_CALLBACK (mi_user_headers_settings_changed_cb), NULL); 362 G_UNLOCK (mi_user_headers); 363diff --git a/src/camel/providers/imapx/camel-imapx-server.c b/src/camel/providers/imapx/camel-imapx-server.c 364index bbf214b..bed39d2 100644 365--- a/src/camel/providers/imapx/camel-imapx-server.c 366+++ b/src/camel/providers/imapx/camel-imapx-server.c 367@@ -5661,7 +5661,18 @@ camel_imapx_server_do_old_flags_update (CamelFolder *folder) 368 if (do_old_flags_update) { 369 GSettings *eds_settings; 370 371- eds_settings = g_settings_new ("org.gnome.evolution-data-server"); 372+ { 373+ g_autoptr(GSettingsSchemaSource) schema_source; 374+ g_autoptr(GSettingsSchema) schema; 375+ schema_source = g_settings_schema_source_new_from_directory("@EDS@", 376+ g_settings_schema_source_get_default(), 377+ TRUE, 378+ NULL); 379+ schema = g_settings_schema_source_lookup(schema_source, 380+ "org.gnome.evolution-data-server", 381+ FALSE); 382+ eds_settings = g_settings_new_full(schema, NULL, NULL); 383+ } 384 385 if (g_settings_get_boolean (eds_settings, "limit-operations-in-power-saver-mode")) { 386 GPowerProfileMonitor *power_monitor; 387diff --git a/src/camel/providers/smtp/camel-smtp-transport.c b/src/camel/providers/smtp/camel-smtp-transport.c 388index 6556f1e..90f0a5e 100644 389--- a/src/camel/providers/smtp/camel-smtp-transport.c 390+++ b/src/camel/providers/smtp/camel-smtp-transport.c 391@@ -1471,7 +1471,18 @@ smtp_helo (CamelSmtpTransport *transport, 392 transport->authtypes = NULL; 393 } 394 395- settings = g_settings_new ("org.gnome.evolution-data-server"); 396+ { 397+ g_autoptr(GSettingsSchemaSource) schema_source; 398+ g_autoptr(GSettingsSchema) schema; 399+ schema_source = g_settings_schema_source_new_from_directory("@EDS@", 400+ g_settings_schema_source_get_default(), 401+ TRUE, 402+ NULL); 403+ schema = g_settings_schema_source_lookup(schema_source, 404+ "org.gnome.evolution-data-server", 405+ FALSE); 406+ settings = g_settings_new_full(schema, NULL, NULL); 407+ } 408 name = g_settings_get_string (settings, "camel-smtp-helo-argument"); 409 g_clear_object (&settings); 410 411diff --git a/src/libedataserver/e-network-monitor.c b/src/libedataserver/e-network-monitor.c 412index 188f276..939f89b 100644 413--- a/src/libedataserver/e-network-monitor.c 414+++ b/src/libedataserver/e-network-monitor.c 415@@ -256,7 +256,18 @@ e_network_monitor_constructed (GObject *object) 416 /* Chain up to parent's method. */ 417 G_OBJECT_CLASS (e_network_monitor_parent_class)->constructed (object); 418 419- settings = g_settings_new ("org.gnome.evolution-data-server"); 420+ { 421+ g_autoptr(GSettingsSchemaSource) schema_source; 422+ g_autoptr(GSettingsSchema) schema; 423+ schema_source = g_settings_schema_source_new_from_directory("@EDS@", 424+ g_settings_schema_source_get_default(), 425+ TRUE, 426+ NULL); 427+ schema = g_settings_schema_source_lookup(schema_source, 428+ "org.gnome.evolution-data-server", 429+ FALSE); 430+ settings = g_settings_new_full(schema, NULL, NULL); 431+ } 432 g_settings_bind ( 433 settings, "network-monitor-gio-name", 434 object, "gio-name", 435diff --git a/src/libedataserver/e-oauth2-service-google.c b/src/libedataserver/e-oauth2-service-google.c 436index 1453410..a3f06b0 100644 437--- a/src/libedataserver/e-oauth2-service-google.c 438+++ b/src/libedataserver/e-oauth2-service-google.c 439@@ -72,7 +72,18 @@ eos_google_read_settings (EOAuth2Service *service, 440 if (!value) { 441 GSettings *settings; 442 443- settings = g_settings_new ("org.gnome.evolution-data-server"); 444+ { 445+ g_autoptr(GSettingsSchemaSource) schema_source; 446+ g_autoptr(GSettingsSchema) schema; 447+ schema_source = g_settings_schema_source_new_from_directory("@EDS@", 448+ g_settings_schema_source_get_default(), 449+ TRUE, 450+ NULL); 451+ schema = g_settings_schema_source_lookup(schema_source, 452+ "org.gnome.evolution-data-server", 453+ FALSE); 454+ settings = g_settings_new_full(schema, NULL, NULL); 455+ } 456 value = g_settings_get_string (settings, key_name); 457 g_object_unref (settings); 458 459diff --git a/src/libedataserver/e-oauth2-service-outlook.c b/src/libedataserver/e-oauth2-service-outlook.c 460index 7633e93..2328048 100644 461--- a/src/libedataserver/e-oauth2-service-outlook.c 462+++ b/src/libedataserver/e-oauth2-service-outlook.c 463@@ -71,7 +71,18 @@ eos_outlook_read_settings (EOAuth2Service *service, 464 if (!value) { 465 GSettings *settings; 466 467- settings = g_settings_new ("org.gnome.evolution-data-server"); 468+ { 469+ g_autoptr(GSettingsSchemaSource) schema_source; 470+ g_autoptr(GSettingsSchema) schema; 471+ schema_source = g_settings_schema_source_new_from_directory("@EDS@", 472+ g_settings_schema_source_get_default(), 473+ TRUE, 474+ NULL); 475+ schema = g_settings_schema_source_lookup(schema_source, 476+ "org.gnome.evolution-data-server", 477+ FALSE); 478+ settings = g_settings_new_full(schema, NULL, NULL); 479+ } 480 value = g_settings_get_string (settings, key_name); 481 g_object_unref (settings); 482 483diff --git a/src/libedataserver/e-oauth2-service-yahoo.c b/src/libedataserver/e-oauth2-service-yahoo.c 484index 3bb1071..199e822 100644 485--- a/src/libedataserver/e-oauth2-service-yahoo.c 486+++ b/src/libedataserver/e-oauth2-service-yahoo.c 487@@ -67,7 +67,18 @@ eos_yahoo_read_settings (EOAuth2Service *service, 488 if (!value) { 489 GSettings *settings; 490 491- settings = g_settings_new ("org.gnome.evolution-data-server"); 492+ { 493+ g_autoptr(GSettingsSchemaSource) schema_source; 494+ g_autoptr(GSettingsSchema) schema; 495+ schema_source = g_settings_schema_source_new_from_directory("@EDS@", 496+ g_settings_schema_source_get_default(), 497+ TRUE, 498+ NULL); 499+ schema = g_settings_schema_source_lookup(schema_source, 500+ "org.gnome.evolution-data-server", 501+ FALSE); 502+ settings = g_settings_new_full(schema, NULL, NULL); 503+ } 504 value = g_settings_get_string (settings, key_name); 505 g_object_unref (settings); 506 507diff --git a/src/libedataserver/e-oauth2-service.c b/src/libedataserver/e-oauth2-service.c 508index af59b0b..0c7e75e 100644 509--- a/src/libedataserver/e-oauth2-service.c 510+++ b/src/libedataserver/e-oauth2-service.c 511@@ -94,7 +94,18 @@ eos_default_guess_can_process (EOAuth2Service *service, 512 name_len = strlen (name); 513 hostname_len = strlen (hostname); 514 515- settings = g_settings_new ("org.gnome.evolution-data-server"); 516+ { 517+ g_autoptr(GSettingsSchemaSource) schema_source; 518+ g_autoptr(GSettingsSchema) schema; 519+ schema_source = g_settings_schema_source_new_from_directory("@EDS@", 520+ g_settings_schema_source_get_default(), 521+ TRUE, 522+ NULL); 523+ schema = g_settings_schema_source_lookup(schema_source, 524+ "org.gnome.evolution-data-server", 525+ FALSE); 526+ settings = g_settings_new_full(schema, NULL, NULL); 527+ } 528 values = g_settings_get_strv (settings, "oauth2-services-hint"); 529 g_object_unref (settings); 530 531diff --git a/src/libedataserver/e-source-registry.c b/src/libedataserver/e-source-registry.c 532index 1539f8b..77cf123 100644 533--- a/src/libedataserver/e-source-registry.c 534+++ b/src/libedataserver/e-source-registry.c 535@@ -1754,7 +1754,19 @@ e_source_registry_init (ESourceRegistry *registry) 536 537 g_mutex_init (&registry->priv->sources_lock); 538 539- registry->priv->settings = g_settings_new (GSETTINGS_SCHEMA); 540+ { 541+ g_autoptr(GSettingsSchemaSource) schema_source; 542+ g_autoptr(GSettingsSchema) schema; 543+ schema_source = g_settings_schema_source_new_from_directory("@EDS@", 544+ g_settings_schema_source_get_default(), 545+ TRUE, 546+ NULL); 547+ schema = g_settings_schema_source_lookup(schema_source, 548+ GSETTINGS_SCHEMA, 549+ FALSE); 550+ registry->priv->settings = g_settings_new_full(schema, NULL, 551+ NULL); 552+ } 553 554 g_signal_connect ( 555 registry->priv->settings, "changed", 556diff --git a/src/libedataserverui/e-reminders-widget.c b/src/libedataserverui/e-reminders-widget.c 557index 14b6481..7149b74 100644 558--- a/src/libedataserverui/e-reminders-widget.c 559+++ b/src/libedataserverui/e-reminders-widget.c 560@@ -1986,7 +1986,19 @@ static void 561 e_reminders_widget_init (ERemindersWidget *reminders) 562 { 563 reminders->priv = e_reminders_widget_get_instance_private (reminders); 564- reminders->priv->settings = g_settings_new ("org.gnome.evolution-data-server.calendar"); 565+ { 566+ g_autoptr(GSettingsSchemaSource) schema_source; 567+ g_autoptr(GSettingsSchema) schema; 568+ schema_source = g_settings_schema_source_new_from_directory("@EDS@", 569+ g_settings_schema_source_get_default(), 570+ TRUE, 571+ NULL); 572+ schema = g_settings_schema_source_lookup(schema_source, 573+ "org.gnome.evolution-data-server.calendar", 574+ FALSE); 575+ reminders->priv->settings = g_settings_new_full(schema, NULL, 576+ NULL); 577+ } 578 reminders->priv->cancellable = g_cancellable_new (); 579 reminders->priv->is_empty = TRUE; 580 reminders->priv->is_mapped = FALSE; 581diff --git a/src/services/evolution-source-registry/evolution-source-registry-autoconfig.c b/src/services/evolution-source-registry/evolution-source-registry-autoconfig.c 582index 6f03053..b5db6b2 100644 583--- a/src/services/evolution-source-registry/evolution-source-registry-autoconfig.c 584+++ b/src/services/evolution-source-registry/evolution-source-registry-autoconfig.c 585@@ -706,7 +706,18 @@ evolution_source_registry_merge_autoconfig_sources (ESourceRegistryServer *serve 586 gchar *autoconfig_directory; 587 gint ii; 588 589- settings = g_settings_new ("org.gnome.evolution-data-server"); 590+ { 591+ g_autoptr(GSettingsSchemaSource) schema_source; 592+ g_autoptr(GSettingsSchema) schema; 593+ schema_source = g_settings_schema_source_new_from_directory("@EDS@", 594+ g_settings_schema_source_get_default(), 595+ TRUE, 596+ NULL); 597+ schema = g_settings_schema_source_lookup(schema_source, 598+ "org.gnome.evolution-data-server", 599+ FALSE); 600+ settings = g_settings_new_full(schema, NULL, NULL); 601+ } 602 603 autoconfig_sources = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, e_autoconfig_free_merge_source_data); 604 605diff --git a/src/services/evolution-source-registry/evolution-source-registry-migrate-proxies.c b/src/services/evolution-source-registry/evolution-source-registry-migrate-proxies.c 606index d531cb9..c96f1d5 100644 607--- a/src/services/evolution-source-registry/evolution-source-registry-migrate-proxies.c 608+++ b/src/services/evolution-source-registry/evolution-source-registry-migrate-proxies.c 609@@ -61,7 +61,18 @@ evolution_source_registry_migrate_proxies (ESourceRegistryServer *server) 610 extension_name = E_SOURCE_EXTENSION_PROXY; 611 extension = e_source_get_extension (source, extension_name); 612 613- settings = g_settings_new (NETWORK_CONFIG_SCHEMA_ID); 614+ { 615+ g_autoptr(GSettingsSchemaSource) schema_source; 616+ g_autoptr(GSettingsSchema) schema; 617+ schema_source = g_settings_schema_source_new_from_directory("@EDS@", 618+ g_settings_schema_source_get_default(), 619+ TRUE, 620+ NULL); 621+ schema = g_settings_schema_source_lookup(schema_source, 622+ NETWORK_CONFIG_SCHEMA_ID, 623+ FALSE); 624+ settings = g_settings_new_full(schema, NULL, NULL); 625+ } 626 627 switch (g_settings_get_int (settings, "proxy-type")) { 628 case 1: 629diff --git a/src/services/evolution-source-registry/evolution-source-registry.c b/src/services/evolution-source-registry/evolution-source-registry.c 630index 1c0a113..6b41423 100644 631--- a/src/services/evolution-source-registry/evolution-source-registry.c 632+++ b/src/services/evolution-source-registry/evolution-source-registry.c 633@@ -181,7 +181,18 @@ main (gint argc, 634 635 reload: 636 637- settings = g_settings_new ("org.gnome.evolution-data-server"); 638+ { 639+ g_autoptr(GSettingsSchemaSource) schema_source; 640+ g_autoptr(GSettingsSchema) schema; 641+ schema_source = g_settings_schema_source_new_from_directory("@EDS@", 642+ g_settings_schema_source_get_default(), 643+ TRUE, 644+ NULL); 645+ schema = g_settings_schema_source_lookup(schema_source, 646+ "org.gnome.evolution-data-server", 647+ FALSE); 648+ settings = g_settings_new_full(schema, NULL, NULL); 649+ } 650 651 if (!opt_disable_migration && !g_settings_get_boolean (settings, "migrated")) { 652 g_settings_set_boolean (settings, "migrated", TRUE);