aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--mail/ChangeLog12
-rw-r--r--mail/importers/evolution-mbox-importer.c1
-rw-r--r--mail/importers/evolution-outlook-importer.c12
3 files changed, 24 insertions, 1 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog
index 82ce46656b..4c265774ff 100644
--- a/mail/ChangeLog
+++ b/mail/ChangeLog
@@ -1,3 +1,15 @@
+2004-03-05 Not Zed <NotZed@Ximian.com>
+
+ ** See bug #55096.
+
+ * importers/evolution-mbox-importer.c (process_item_fn): hack,
+ unref when complete
+
+ * importers/evolution-outlook-importer.c (outlook_importer_new):
+ init status lock.
+ (process_item_fn): hack, unref ourselves when we're complete. i
+ think the shell leaks the ref.
+
2004-03-04 Jeffrey Stedfast <fejj@ximian.com>
* em-folder-view.c (emfv_popup): If event == NULL, don't try to
diff --git a/mail/importers/evolution-mbox-importer.c b/mail/importers/evolution-mbox-importer.c
index 7e830a207a..9e08bf2087 100644
--- a/mail/importers/evolution-mbox-importer.c
+++ b/mail/importers/evolution-mbox-importer.c
@@ -96,6 +96,7 @@ process_item_fn(EvolutionImporter *eimporter, CORBA_Object listener, void *data,
result = GNOME_Evolution_ImporterListener_OK;
GNOME_Evolution_ImporterListener_notifyResult(listener, result, FALSE, ev);
+ bonobo_object_unref(BONOBO_OBJECT(eimporter));
}
static void
diff --git a/mail/importers/evolution-outlook-importer.c b/mail/importers/evolution-outlook-importer.c
index 3a8b334ba8..800d318e76 100644
--- a/mail/importers/evolution-outlook-importer.c
+++ b/mail/importers/evolution-outlook-importer.c
@@ -97,6 +97,16 @@ typedef struct oe_msg_segmentheader oe_msg_segmentheader;
static void
process_item_fn(EvolutionImporter *eimporter, CORBA_Object listener, void *data, CORBA_Environment *ev)
{
+ GNOME_Evolution_ImporterListener_ImporterResult result;
+#if 0
+ if (camel_exception_is_set(importer->ex))
+ result = GNOME_Evolution_ImporterListener_BAD_FILE;
+ else
+#endif
+ result = GNOME_Evolution_ImporterListener_OK;
+
+ GNOME_Evolution_ImporterListener_notifyResult(listener, result, FALSE, ev);
+ bonobo_object_unref(BONOBO_OBJECT(eimporter));
}
@@ -240,7 +250,7 @@ outlook_importer_new(void)
OutlookImporter *oli;
oli = g_new0 (OutlookImporter, 1);
-
+ oli->status_lock = g_mutex_new();
importer = evolution_importer_new (NULL, support_format_fn, load_file_fn, process_item_fn, NULL, oli);
g_object_weak_ref((GObject *)importer, importer_destroy_cb, oli);