aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--mail/ChangeLog7
-rw-r--r--mail/component-factory.c23
2 files changed, 17 insertions, 13 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog
index 9bdd6d60da..ba676018c7 100644
--- a/mail/ChangeLog
+++ b/mail/ChangeLog
@@ -1,3 +1,10 @@
+2001-07-24 Not Zed <NotZed@Ximian.com>
+
+ * component-factory.c (create_folder): Dont call notifyResult here
+ if we've just launched a thread to do the work, it calls it
+ itself. This apparently breaks the importers, but thats a
+ different issue.
+
2001-07-23 Not Zed <NotZed@Ximian.com>
* mail-mt.c (mail_msgport_replied): Go back to calling
diff --git a/mail/component-factory.c b/mail/component-factory.c
index b005863c3a..37e004a2d7 100644
--- a/mail/component-factory.c
+++ b/mail/component-factory.c
@@ -177,10 +177,10 @@ do_create_folder (char *uri, CamelFolder *folder, void *data)
else
result = GNOME_Evolution_ShellComponentListener_INVALID_URI;
- CORBA_exception_init (&ev);
- GNOME_Evolution_ShellComponentListener_notifyResult (listener, result, &ev);
- CORBA_Object_release (listener, &ev);
- CORBA_exception_free (&ev);
+ CORBA_exception_init(&ev);
+ GNOME_Evolution_ShellComponentListener_notifyResult(listener, result, &ev);
+ CORBA_Object_release(listener, &ev);
+ CORBA_exception_free(&ev);
}
static void
@@ -193,21 +193,18 @@ create_folder (EvolutionShellComponent *shell_component,
char *uri;
CORBA_Environment ev;
- CORBA_exception_init (&ev);
- if (!strcmp (type, "mail")) {
+ CORBA_exception_init(&ev);
+ if (!strcmp(type, "mail")) {
/* This makes the uri start with mbox://file://, which
looks silly but turns into a CamelURL that has
url->provider of "mbox" */
- uri = g_strdup_printf ("mbox://%s", physical_uri);
- mail_create_folder (uri, do_create_folder, CORBA_Object_duplicate (listener, &ev));
- GNOME_Evolution_ShellComponentListener_notifyResult (listener,
- GNOME_Evolution_ShellComponentListener_OK, &ev);
-
+ uri = g_strdup_printf("mbox://%s", physical_uri);
+ mail_create_folder(uri, do_create_folder, CORBA_Object_duplicate(listener, &ev));
} else {
- GNOME_Evolution_ShellComponentListener_notifyResult (
+ GNOME_Evolution_ShellComponentListener_notifyResult(
listener, GNOME_Evolution_ShellComponentListener_UNSUPPORTED_TYPE, &ev);
}
- CORBA_exception_free (&ev);
+ CORBA_exception_free(&ev);
}
static void