diff options
-rw-r--r-- | mail/ChangeLog | 54 | ||||
-rw-r--r-- | mail/component-factory.c | 14 | ||||
-rw-r--r-- | mail/folder-browser.c | 4 | ||||
-rw-r--r-- | mail/folder-info.c | 2 | ||||
-rw-r--r-- | mail/importers/evolution-mbox-importer.c | 6 | ||||
-rw-r--r-- | mail/importers/evolution-outlook-importer.c | 2 | ||||
-rw-r--r-- | mail/mail-local.c | 4 | ||||
-rw-r--r-- | mail/mail-ops.c | 14 | ||||
-rw-r--r-- | mail/mail-ops.h | 2 | ||||
-rw-r--r-- | mail/mail-send-recv.c | 2 | ||||
-rw-r--r-- | mail/mail-session.c | 2 | ||||
-rw-r--r-- | mail/mail-tools.c | 6 | ||||
-rw-r--r-- | mail/mail-tools.h | 2 | ||||
-rw-r--r-- | mail/mail-vfolder.c | 4 |
14 files changed, 89 insertions, 29 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog index 7156e72bc1..31fcf9e5a9 100644 --- a/mail/ChangeLog +++ b/mail/ChangeLog @@ -1,3 +1,57 @@ +2001-10-02 Jeffrey Stedfast <fejj@ximian.com> + + * mail-vfolder.c (vfolder_setup_do): Pass an empty flags argument + to mail_tool_uri_to_folder. + (vfolder_adduri_do): Same. + + * mail-session.c (get_folder): Pass an empty flags argument to + mail_tool_uri_to_folder. + + * mail-send-recv.c (receive_get_folder): Pass an empty flags + argument to mail_tool_uri_to_folder. + + * mail-ops.c (get_folder_get): Pass the flags to + mail_tool_uri_to_folder. + (mail_get_folder): Now takes a flags argument. + (remove_folder_get): Pass an empty flags argument to + mail_tool_uri_to_folder. + (mail_send_message): Pass an empty argument flag to + mail_tool_uri_to_folder. + (transfer_messages_transfer): Same. Destination folder should + already be created by this time. + + * folder-info.c (do_get_info): Pass an empty flags argument to + mail_tool_uri_to_folder. + + * importers/evolution-mbox-importer.c (folder_created_cb): Pass + the CREATE flag here too. + (load_file_fn): And here. + (load_file_fn): And here too. + + * importers/evolution-outlook-importer.c (load_file_fn): Pass the + CREATE flag to mail_tool_uri_to_folder. + + * folder-browser.c (folder_browser_new): Pass an empty flags + argument. + (x_evolution_message_parse): Pass an empty flags argument to + mail_tool_uri_to_folder. + + * component-factory.c (create_folder): Pass a CREATE flag to + mail_get_folder here too. + (owner_set_cb): And here. + (xfer_folder): Shouldn't need the CREATE flag here, so not passing + any flags. + (destination_folder_handle_drop): Same. + + * mail-local.c (mail_local_store_add_folder): Pass a CREATE flag + to mail_get_folder. + (reconfigure_folder_reconfigure): Pass an empty flags argument to + mail_tool_uri_to_folder. + + * mail-tools.c (mail_tool_uri_to_folder): Take a flags argument. + (mail_tool_get_local_inbox): Pass an empty flags argument to + mail_tool_uri_to_folder. + 2001-10-02 Ettore Perazzoli <ettore@ximian.com> * mail-account-gui.c (launch_signature_editor): Use diff --git a/mail/component-factory.c b/mail/component-factory.c index 804829a491..b34fcc77d9 100644 --- a/mail/component-factory.c +++ b/mail/component-factory.c @@ -207,7 +207,8 @@ create_folder (EvolutionShellComponent *shell_component, CORBA_exception_init (&ev); if (!strcmp (type, "mail")) { - mail_get_folder(physical_uri, create_folder_done, CORBA_Object_duplicate (listener, &ev), mail_thread_new); + mail_get_folder (physical_uri, CAMEL_STORE_FOLDER_CREATE, create_folder_done, + CORBA_Object_duplicate (listener, &ev), mail_thread_new); } else { GNOME_Evolution_ShellComponentListener_notifyResult ( listener, GNOME_Evolution_ShellComponentListener_UNSUPPORTED_TYPE, &ev); @@ -323,7 +324,7 @@ xfer_folder (EvolutionShellComponent *shell_component, } camel_exception_init (&ex); - source = mail_tool_uri_to_folder (source_physical_uri, &ex); + source = mail_tool_uri_to_folder (source_physical_uri, 0, &ex); camel_exception_clear (&ex); CORBA_exception_init (&ev); @@ -485,7 +486,7 @@ destination_folder_handle_drop (EvolutionShellComponentDndDestinationFolder *des switch (type) { case ACCEPTED_DND_TYPE_TEXT_URI_LIST: - folder = mail_tool_uri_to_folder (physical_uri, NULL); + folder = mail_tool_uri_to_folder (physical_uri, 0, NULL); if (!folder) return FALSE; @@ -527,7 +528,7 @@ destination_folder_handle_drop (EvolutionShellComponentDndDestinationFolder *des g_free (urls); break; case ACCEPTED_DND_TYPE_MESSAGE_RFC822: - folder = mail_tool_uri_to_folder (physical_uri, &ex); + folder = mail_tool_uri_to_folder (physical_uri, 0, &ex); if (!folder) { camel_exception_clear (&ex); return FALSE; @@ -551,7 +552,7 @@ destination_folder_handle_drop (EvolutionShellComponentDndDestinationFolder *des inptr = strchr (in, ' '); url = g_strndup (in, inptr - in); - folder = mail_tool_uri_to_folder (url, &ex); + folder = mail_tool_uri_to_folder (url, 0, &ex); g_free (url); if (!folder) { @@ -685,7 +686,8 @@ owner_set_cb (EvolutionShellComponent *shell_component, for (i = 0; i < sizeof (standard_folders) / sizeof (standard_folders[0]); i++) { *standard_folders[i].uri = g_strdup_printf ("file://%s/local/%s", evolution_dir, standard_folders[i].name); - mail_msg_wait(mail_get_folder(*standard_folders[i].uri, got_folder, standard_folders[i].folder, mail_thread_new)); + mail_msg_wait (mail_get_folder (*standard_folders[i].uri, CAMEL_STORE_FOLDER_CREATE, + got_folder, standard_folders[i].folder, mail_thread_new)); } mail_session_enable_interaction (TRUE); diff --git a/mail/folder-browser.c b/mail/folder-browser.c index a3249c8064..9913363641 100644 --- a/mail/folder-browser.c +++ b/mail/folder-browser.c @@ -431,7 +431,7 @@ x_evolution_message_parse (char *in, unsigned int inlen, GPtrArray **uids) inptr = strchr (in, ' '); uri = g_strndup (in, inptr - in); - folder = mail_tool_uri_to_folder (uri, NULL); + folder = mail_tool_uri_to_folder (uri, 0, NULL); g_free (uri); if (!folder) @@ -1986,7 +1986,7 @@ folder_browser_new (const GNOME_Evolution_Shell shell, const char *uri) folder_browser->uri = g_strdup (uri); gtk_object_ref (GTK_OBJECT (folder_browser)); - mail_get_folder(folder_browser->uri, got_folder, folder_browser, mail_thread_new); + mail_get_folder (folder_browser->uri, 0, got_folder, folder_browser, mail_thread_new); return GTK_WIDGET (folder_browser); } diff --git a/mail/folder-info.c b/mail/folder-info.c index 268efe5e77..2280b72a46 100644 --- a/mail/folder-info.c +++ b/mail/folder-info.c @@ -113,7 +113,7 @@ do_get_info (struct _mail_msg *mm) #endif ex = camel_exception_new (); - folder = mail_tool_uri_to_folder (m->foldername, ex); + folder = mail_tool_uri_to_folder (m->foldername, 0, ex); if (camel_exception_is_set (ex)) { g_warning ("Camel exception: %s", camel_exception_get_description (ex)); } diff --git a/mail/importers/evolution-mbox-importer.c b/mail/importers/evolution-mbox-importer.c index 5c3062236e..23fce7eb7a 100644 --- a/mail/importers/evolution-mbox-importer.c +++ b/mail/importers/evolution-mbox-importer.c @@ -204,7 +204,7 @@ folder_created_cb (BonoboListener *listener, fullpath = g_strconcat ("file://", result->path, NULL); ex = camel_exception_new (); - importer->folder = mail_tool_uri_to_folder (fullpath, ex); + importer->folder = mail_tool_uri_to_folder (fullpath, CAMEL_STORE_FOLDER_CREATE, ex); if (camel_exception_is_set (ex)) { g_warning ("Error opening %s", fullpath); @@ -269,7 +269,7 @@ load_file_fn (EvolutionImporter *eimporter, fullpath = e_path_to_physical (homedir, folderpath); ex = camel_exception_new (); - importer->folder = mail_tool_uri_to_folder (fullpath, ex); + importer->folder = mail_tool_uri_to_folder (fullpath, CAMEL_STORE_FOLDER_CREATE, ex); g_free (homedir); if (camel_exception_is_set (ex) || importer->folder == NULL) { @@ -291,7 +291,7 @@ load_file_fn (EvolutionImporter *eimporter, mail_importer_create_folder (parent, name, NULL, listener); camel_exception_free (ex); ex = camel_exception_new (); - importer->folder = mail_tool_uri_to_folder (fullpath, ex); + importer->folder = mail_tool_uri_to_folder (fullpath, CAMEL_STORE_FOLDER_CREATE, ex); delayed = TRUE; g_free (parent); } diff --git a/mail/importers/evolution-outlook-importer.c b/mail/importers/evolution-outlook-importer.c index 50e386a388..058c365d17 100644 --- a/mail/importers/evolution-outlook-importer.c +++ b/mail/importers/evolution-outlook-importer.c @@ -268,7 +268,7 @@ load_file_fn (EvolutionImporter *eimporter, if (folderpath == NULL || *folderpath == '\0') importer->folder = mail_tool_get_local_inbox (NULL); else - importer->folder = mail_tool_uri_to_folder (folderpath, NULL); + importer->folder = mail_tool_uri_to_folder (folderpath, CAMEL_STORE_FOLDER_CREATE, NULL); if (importer->folder == NULL){ g_warning ("Bad folder"); diff --git a/mail/mail-local.c b/mail/mail-local.c index 759c464737..7ee5bbf841 100644 --- a/mail/mail-local.c +++ b/mail/mail-local.c @@ -846,7 +846,7 @@ static void mail_local_store_add_folder(MailLocalStore *mls, const char *uri, co /* this is just so the folder is opened at least once to setup the folder counts etc in the display. Joy eh? The result is discarded. */ - mail_get_folder(uri, NULL, NULL, mail_thread_queued_slow); + mail_get_folder (uri, CAMEL_STORE_FOLDER_CREATE, NULL, NULL, mail_thread_queued_slow); } } @@ -1092,7 +1092,7 @@ reconfigure_folder_reconfigure (struct _mail_msg *mm) return; } - local_folder = mail_tool_uri_to_folder (m->fb->uri, &mm->ex); + local_folder = mail_tool_uri_to_folder (m->fb->uri, 0, &mm->ex); if (camel_exception_is_set (&mm->ex)) { g_warning ("Can't resolve URI \"%s\" for reconfiguration!", m->fb->uri); return; diff --git a/mail/mail-ops.c b/mail/mail-ops.c index 8867ecb140..9f55bd2f0f 100644 --- a/mail/mail-ops.c +++ b/mail/mail-ops.c @@ -488,7 +488,7 @@ mail_send_message(CamelMimeMessage *message, const char *destination, CamelFilte } if (sent_folder_uri) { - folder = mail_tool_uri_to_folder (sent_folder_uri, NULL); + folder = mail_tool_uri_to_folder (sent_folder_uri, 0, NULL); g_free (sent_folder_uri); if (!folder) { /* FIXME */ @@ -881,7 +881,7 @@ transfer_messages_transfer (struct _mail_msg *mm) desc = _("Copying"); } - dest = mail_tool_uri_to_folder (m->dest_uri, &mm->ex); + dest = mail_tool_uri_to_folder (m->dest_uri, 0, &mm->ex); if (camel_exception_is_set (&mm->ex)) return; @@ -1202,6 +1202,7 @@ struct _get_folder_msg { struct _mail_msg msg; char *uri; + guint32 flags; CamelFolder *folder; void (*done) (char *uri, CamelFolder *folder, void *data); void *data; @@ -1220,7 +1221,7 @@ get_folder_get (struct _mail_msg *mm) { struct _get_folder_msg *m = (struct _get_folder_msg *)mm; - m->folder = mail_tool_uri_to_folder (m->uri, &mm->ex); + m->folder = mail_tool_uri_to_folder (m->uri, m->flags, &mm->ex); } static void @@ -1250,13 +1251,16 @@ static struct _mail_msg_op get_folder_op = { }; int -mail_get_folder (const char *uri, void (*done)(char *uri, CamelFolder *folder, void *data), void *data, EThread *thread) +mail_get_folder (const char *uri, guint32 flags, + void (*done)(char *uri, CamelFolder *folder, void *data), + void *data, EThread *thread) { struct _get_folder_msg *m; int id; m = mail_msg_new(&get_folder_op, NULL, sizeof(*m)); m->uri = g_strdup (uri); + m->flags = flags; m->data = data; m->done = done; @@ -1364,7 +1368,7 @@ remove_folder_get (struct _mail_msg *mm) m->removed = FALSE; - folder = mail_tool_uri_to_folder (m->uri, &mm->ex); + folder = mail_tool_uri_to_folder (m->uri, 0, &mm->ex); if (!folder) return; diff --git a/mail/mail-ops.h b/mail/mail-ops.h index bc5a15df9a..c4a134a192 100644 --- a/mail/mail-ops.h +++ b/mail/mail-ops.h @@ -61,7 +61,7 @@ void mail_get_messages (CamelFolder *folder, GPtrArray *uids, void *data); /* same for a folder */ -int mail_get_folder (const char *uri, +int mail_get_folder (const char *uri, guint32 flags, void (*done) (char *uri, CamelFolder *folder, void *data), void *data, EThread *thread); diff --git a/mail/mail-send-recv.c b/mail/mail-send-recv.c index d1d619b0dd..d758bd6dca 100644 --- a/mail/mail-send-recv.c +++ b/mail/mail-send-recv.c @@ -566,7 +566,7 @@ receive_get_folder(CamelFilterDriver *d, const char *uri, void *data, CamelExcep camel_object_ref((CamelObject *)oldinfo->folder); return oldinfo->folder; } - folder = mail_tool_uri_to_folder(uri, ex); + folder = mail_tool_uri_to_folder (uri, 0, ex); if (!folder) return NULL; diff --git a/mail/mail-session.c b/mail/mail-session.c index 9c5907443e..0459549ddc 100644 --- a/mail/mail-session.c +++ b/mail/mail-session.c @@ -337,7 +337,7 @@ remove_timeout (CamelSession *session, guint handle) static CamelFolder * get_folder (CamelFilterDriver *d, const char *uri, void *data, CamelException *ex) { - return mail_tool_uri_to_folder(uri, ex); + return mail_tool_uri_to_folder (uri, 0, ex); } static CamelFilterDriver * diff --git a/mail/mail-tools.c b/mail/mail-tools.c index 83b787019d..d134bfd4ca 100644 --- a/mail/mail-tools.c +++ b/mail/mail-tools.c @@ -71,7 +71,7 @@ mail_tool_get_local_inbox (CamelException *ex) CamelFolder *folder; url = g_strdup_printf("file://%s/local/Inbox", evolution_dir); - folder = mail_tool_uri_to_folder (url, ex); + folder = mail_tool_uri_to_folder (url, 0, ex); g_free (url); return folder; } @@ -279,7 +279,7 @@ mail_tool_make_message_attachment (CamelMimeMessage *message) } CamelFolder * -mail_tool_uri_to_folder (const char *uri, CamelException *ex) +mail_tool_uri_to_folder (const char *uri, guint32 flags, CamelException *ex) { CamelURL *url; CamelStore *store = NULL; @@ -315,7 +315,7 @@ mail_tool_uri_to_folder (const char *uri, CamelException *ex) if (offset) folder = camel_store_get_trash (store, ex); else - folder = camel_store_get_folder (store, name, 0, ex); + folder = camel_store_get_folder (store, name, flags, ex); camel_object_unref (CAMEL_OBJECT (store)); } diff --git a/mail/mail-tools.h b/mail/mail-tools.h index 7d795cafa5..d19d6553ca 100644 --- a/mail/mail-tools.h +++ b/mail/mail-tools.h @@ -73,7 +73,7 @@ mail_tool_make_message_attachment (CamelMimeMessage *message); /* Parse the ui into a real CamelFolder any way we know how. */ CamelFolder * -mail_tool_uri_to_folder (const char *uri, CamelException *ex); +mail_tool_uri_to_folder (const char *uri, guint32 flags, CamelException *ex); GHashTable * mail_lookup_url_table (CamelMimeMessage *mime_message); diff --git a/mail/mail-vfolder.c b/mail/mail-vfolder.c index 4bb56e8983..1faf912cc5 100644 --- a/mail/mail-vfolder.c +++ b/mail/mail-vfolder.c @@ -98,7 +98,7 @@ vfolder_setup_do(struct _mail_msg *mm) l = m->sources_uri; while (l) { (printf(" Adding uri: %s\n", (char *)l->data)); - folder = mail_tool_uri_to_folder(l->data, &mm->ex); + folder = mail_tool_uri_to_folder (l->data, 0, &mm->ex); if (folder) { list = g_list_append(list, folder); } else { @@ -217,7 +217,7 @@ vfolder_adduri_do(struct _mail_msg *mm) } if (folder == NULL) - folder = mail_tool_uri_to_folder(m->uri, &mm->ex); + folder = mail_tool_uri_to_folder (m->uri, 0, &mm->ex); if (folder != NULL) { if (folder != drafts_folder && folder != outbox_folder && folder != sent_folder) { |