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