CamelFolder *folder;
CamelStore *parent_store;
const gchar *full_name;
- const gchar *host;
- const gchar *user;
gchar *description;
+ gchar *host;
+ gchar *user;
folder = CAMEL_FOLDER (object);
full_name = camel_folder_get_full_name (folder);
parent_store = camel_folder_get_parent_store (folder);
service = CAMEL_SERVICE (parent_store);
- settings = camel_service_get_settings (service);
+
+ settings = camel_service_ref_settings (service);
network_settings = CAMEL_NETWORK_SETTINGS (settings);
- host = camel_network_settings_get_host (network_settings);
- user = camel_network_settings_get_user (network_settings);
+ host = camel_network_settings_dup_host (network_settings);
+ user = camel_network_settings_dup_user (network_settings);
+
+ g_object_unref (settings);
description = g_strdup_printf (
"%s@%s:%s", user, host, full_name);
camel_folder_set_description (folder, description);
g_free (description);
+
+ g_free (host);
+ g_free (user);
}
static void
}
service = CAMEL_SERVICE (parent);
- settings = camel_service_get_settings (service);
+ settings = camel_service_ref_settings (service);
g_object_get (
settings,
g_free (trash_path);
}
+ g_object_unref (settings);
+
imap_folder->search = camel_imap_search_new (folder_dir);
camel_store_summary_connect_folder_summary (
g_return_val_if_fail (CAMEL_IS_STORE (store), FALSE);
service = CAMEL_SERVICE (store);
- settings = camel_service_get_settings (service);
+
+ settings = camel_service_ref_settings (service);
network_settings = CAMEL_NETWORK_SETTINGS (settings);
host = camel_network_settings_dup_host (network_settings);
+ g_object_unref (settings);
+
is_google =
(host != NULL) && (
host_ends_with (host, "gmail.com") ||
is_gmail = is_google_account (parent_store);
service = CAMEL_SERVICE (parent_store);
- settings = camel_service_get_settings (service);
if (folder->permanent_flags == 0 || !camel_offline_store_get_online (CAMEL_OFFLINE_STORE (store))) {
if (expunge) {
camel_folder_sort_uids (folder, summary);
max = summary->len;
+ settings = camel_service_ref_settings (service);
+
/* deleted_uids is NULL when not using real trash */
folder_path = camel_imap_settings_dup_real_trash_path (
CAMEL_IMAP_SETTINGS (settings));
}
g_free (folder_path);
- if (real_trash)
- deleted_uids = g_ptr_array_new ();
-
/* junked_uids is NULL when not using real junk */
folder_path = camel_imap_settings_dup_real_junk_path (
CAMEL_IMAP_SETTINGS (settings));
}
g_free (folder_path);
+ g_object_unref (settings);
+
+ if (real_trash)
+ deleted_uids = g_ptr_array_new ();
+
if (real_junk)
junked_uids = g_ptr_array_new ();
return FALSE;
service = CAMEL_SERVICE (parent_store);
- settings = camel_service_get_settings (service);
+
+ settings = camel_service_ref_settings (service);
trash_path = camel_imap_settings_dup_real_trash_path (
CAMEL_IMAP_SETTINGS (settings));
+ g_object_unref (settings);
+
mark_moved = is_google_account (parent_store) && trash_path != NULL;
full_name = camel_folder_get_full_name (destination);
parent_store = camel_folder_get_parent_store (folder);
store = CAMEL_IMAP_STORE (parent_store);
service = CAMEL_SERVICE (parent_store);
- settings = camel_service_get_settings (service);
if (!camel_imap_store_connected (store, error))
return FALSE;
+ settings = camel_service_ref_settings (service);
+
fetch_headers = camel_imap_settings_get_fetch_headers (
CAMEL_IMAP_SETTINGS (settings));
extra_headers = camel_imap_settings_dup_fetch_headers_extra (
CAMEL_IMAP_SETTINGS (settings));
+ g_object_unref (settings);
+
if (store->server_level >= IMAP_LEVEL_IMAP4REV1) {
if (fetch_headers == CAMEL_FETCH_HEADERS_ALL)
header_spec = g_string_new ("HEADER");