[evolution-patches] fix for bug #58150 (calendar)
- From: Jeffrey Stedfast <fejj ximian com>
- To: evolution-patches ximian com
- Subject: [evolution-patches] fix for bug #58150 (calendar)
- Date: Mon, 09 Aug 2004 15:07:49 -0400
init bonobo just like libebook.
Jeff
? 58150.patch
? depcomp
? install-sh
? missing
? mkinstalldirs
? ylwrap
? libical/src/python/Makefile
? libical/src/python/Makefile.in
Index: ChangeLog
===================================================================
RCS file: /cvs/gnome/evolution-data-server/calendar/ChangeLog,v
retrieving revision 1.306
diff -u -r1.306 ChangeLog
--- ChangeLog 4 Aug 2004 05:38:29 -0000 1.306
+++ ChangeLog 9 Aug 2004 19:08:16 -0000
@@ -1,3 +1,11 @@
+2004-08-09 Jeffrey Stedfast <fejj novell com>
+
+ Fixes bug #58150
+
+ * libecal/e-cal.c (e_cal_activate): init bonobo if it isn't
+ already initialised.
+ (e_cal_new): Call e_cal_activate().
+
2004-08-04 Chenthill Palanisamy <pchenthill novell com>
Fixes #60265
Index: libecal/e-cal.c
===================================================================
RCS file: /cvs/gnome/evolution-data-server/calendar/libecal/e-cal.c,v
retrieving revision 1.69
diff -u -r1.69 e-cal.c
--- libecal/e-cal.c 30 Jul 2004 12:30:43 -0000 1.69
+++ libecal/e-cal.c 9 Aug 2004 19:08:16 -0000
@@ -29,6 +29,7 @@
#include <bonobo-activation/bonobo-activation.h>
#include <bonobo/bonobo-exception.h>
#include <bonobo/bonobo-i18n.h>
+#include <bonobo/bonobo-main.h>
#include <libgnome/gnome-util.h>
#include <libedataserver/e-component-listener.h>
@@ -1326,6 +1327,23 @@
return result;
}
+/* one-time start up for libecal */
+static void
+e_cal_activate ()
+{
+ static GStaticMutex e_cal_lock = G_STATIC_MUTEX_INIT;
+ static gboolean activated = FALSE;
+
+ g_static_mutex_lock (&e_cal_lock);
+ if (!activated) {
+ activated = TRUE;
+
+ if (!bonobo_is_initialized ())
+ bonobo_init (NULL, NULL);
+ }
+ g_static_mutex_unlock (&e_cal_lock);
+}
+
/**
* e_cal_new:
* @source:
@@ -1341,7 +1359,9 @@
e_cal_new (ESource *source, ECalSourceType type)
{
ECal *ecal;
-
+
+ e_cal_activate ();
+
ecal = g_object_new (E_TYPE_CAL, NULL);
if (!fetch_corba_cal (ecal, source, type)) {
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]