diff options
author | Rodrigo Moya <rodrigo@ximian.com> | 2002-08-26 23:56:05 +0800 |
---|---|---|
committer | Rodrigo Moya <rodrigo@src.gnome.org> | 2002-08-26 23:56:05 +0800 |
commit | 4e8966108728859537ec045decb368251bf078dc (patch) | |
tree | 17066ea78b122d70ec7deb6594cd33d828c0d18b /calendar/gui/alarm-notify/notify-main.c | |
parent | f95a4634519d4e41c4d1f29ab4f6cf0503a37995 (diff) | |
download | gsoc2013-evolution-4e8966108728859537ec045decb368251bf078dc.tar gsoc2013-evolution-4e8966108728859537ec045decb368251bf078dc.tar.gz gsoc2013-evolution-4e8966108728859537ec045decb368251bf078dc.tar.bz2 gsoc2013-evolution-4e8966108728859537ec045decb368251bf078dc.tar.lz gsoc2013-evolution-4e8966108728859537ec045decb368251bf078dc.tar.xz gsoc2013-evolution-4e8966108728859537ec045decb368251bf078dc.tar.zst gsoc2013-evolution-4e8966108728859537ec045decb368251bf078dc.zip |
Fixes #12326
2002-08-26 Rodrigo Moya <rodrigo@ximian.com>
Fixes #12326
* gui/alarm-notify/config-data.c (ensure_inited): create a
EConfigListener for configuration access.
(do_cleanup): g_atexit installed function, to clean up configuration
database resources.
(config_data_get_timezone): retrieve the configuration for the
EConfigListener object.
(config_data_get_listener): new function.
* gui/alarm-notify/save.c (get_config_db, discard_config_db): removed.
Use EConfigListener instead.
(save_notification_time, get_saved_notification_time,
save_calendars_to_load, get_calendars_to_load, save_blessed_program,
is_blessed_program): use EConfigListener.
* gui/alarm-notify/notify-main.c (init_alarm_notify_service): removed.
(alarm_notify_factory_fn): create here the alarm_notify_service if it
hasn't been created yet.
(load_calendars): likewise.
(main): don't call init_alarm_notify_service.
svn path=/trunk/; revision=17859
Diffstat (limited to 'calendar/gui/alarm-notify/notify-main.c')
-rw-r--r-- | calendar/gui/alarm-notify/notify-main.c | 30 |
1 files changed, 14 insertions, 16 deletions
diff --git a/calendar/gui/alarm-notify/notify-main.c b/calendar/gui/alarm-notify/notify-main.c index 06fe87b611..b7364475ca 100644 --- a/calendar/gui/alarm-notify/notify-main.c +++ b/calendar/gui/alarm-notify/notify-main.c @@ -43,7 +43,7 @@ static GnomeClient *master_client = NULL; static BonoboGenericFactory *factory; -static AlarmNotify *alarm_notify_service; +static AlarmNotify *alarm_notify_service = NULL; /* Callback for the master client's "die" signal. We must terminate the daemon @@ -86,16 +86,6 @@ set_session_parameters (char **argv) GTK_SIGNAL_FUNC (client_die_cb), NULL); } -/* Creates the singleton alarm notify service object */ -static gboolean -init_alarm_notify_service (void) -{ - g_assert (alarm_notify_service == NULL); - - alarm_notify_service = alarm_notify_new (); - return (alarm_notify_service != NULL); -} - /* Factory function for the alarm notify service; just creates and references a * singleton service object. */ @@ -104,6 +94,11 @@ alarm_notify_factory_fn (BonoboGenericFactory *factory, void *data) { g_assert (alarm_notify_service != NULL); + if (!alarm_notify_service) { + alarm_notify_service = alarm_notify_new (); + g_assert (alarm_notify_service != NULL); + } + bonobo_object_ref (BONOBO_OBJECT (alarm_notify_service)); return BONOBO_OBJECT (alarm_notify_service); } @@ -115,6 +110,14 @@ load_calendars (gpointer user_data) GPtrArray *uris; int i; + alarm_queue_init (); + + /* create the alarm notification service */ + if (!alarm_notify_service) { + alarm_notify_service = alarm_notify_new (); + g_assert (alarm_notify_service != NULL); + } + uris = get_calendars_to_load (); if (!uris) { g_message ("load_calendars(): Could not get the list of calendars to load"); @@ -177,11 +180,6 @@ main (int argc, char **argv) glade_gnome_init (); - alarm_queue_init (); - - if (!init_alarm_notify_service ()) - g_error (_("Could not create the alarm notify service")); - factory = bonobo_generic_factory_new ("OAFIID:GNOME_Evolution_Calendar_AlarmNotify_Factory", alarm_notify_factory_fn, NULL); if (!factory) |