diff options
author | Matthew Barnes <mbarnes@redhat.com> | 2012-08-09 19:10:47 +0800 |
---|---|---|
committer | Matthew Barnes <mbarnes@redhat.com> | 2012-08-09 19:17:16 +0800 |
commit | c17e5b870e5c03887fa0dc158db382d827775c8c (patch) | |
tree | 0fefc0d06529d55f8e31eec9720e535adaaef085 | |
parent | ae68fa9b843eab73c82cd99fb53cb11a5229a1ce (diff) | |
download | gsoc2013-evolution-c17e5b870e5c03887fa0dc158db382d827775c8c.tar.gz gsoc2013-evolution-c17e5b870e5c03887fa0dc158db382d827775c8c.tar.zst gsoc2013-evolution-c17e5b870e5c03887fa0dc158db382d827775c8c.zip |
migrate_mbox_to_maildir(): Fix a reference counting error.
The ESourceCamel extension owns the CamelSettings instance and the
ESource instance owns the ESourceCamel extension. Unreference the
ESource AFTER we're done with the CamelSettings.
-rw-r--r-- | mail/e-mail-migrate.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/mail/e-mail-migrate.c b/mail/e-mail-migrate.c index a1bf10f8d9..e2968c1d9f 100644 --- a/mail/e-mail-migrate.c +++ b/mail/e-mail-migrate.c @@ -461,16 +461,17 @@ migrate_mbox_to_maildir (EShellBackend *shell_backend, CAMEL_SESSION (session), "local", "maildir", CAMEL_PROVIDER_STORE, &error); - g_object_unref (source); - if (error != NULL) { g_warning ("%s: %s", G_STRFUNC, error->message); + g_object_unref (source); g_error_free (error); return FALSE; } camel_service_set_settings (mbox_service, settings); + g_object_unref (source); + settings = camel_service_get_settings (maildir_service); path = g_build_filename (data_dir, "local", NULL); g_object_set (settings, "path", path, NULL); |