diff options
author | Dan Winship <danw@src.gnome.org> | 2003-03-25 21:57:25 +0800 |
---|---|---|
committer | Dan Winship <danw@src.gnome.org> | 2003-03-25 21:57:25 +0800 |
commit | 5d40c589ac1f330e06d6384ebd150f24f15c04a9 (patch) | |
tree | c92a8d01fdd15526c650b1d67fa74b4c8ba6f224 /calendar/gui | |
parent | be58e1949e5df9f14d07f1019a273a74aa4982f8 (diff) | |
download | gsoc2013-evolution-5d40c589ac1f330e06d6384ebd150f24f15c04a9.tar.gz gsoc2013-evolution-5d40c589ac1f330e06d6384ebd150f24f15c04a9.tar.zst gsoc2013-evolution-5d40c589ac1f330e06d6384ebd150f24f15c04a9.zip |
Utility wrapper around icalparser.
* cal-util/cal-util.c (cal_util_parse_ics_file): Utility wrapper
around icalparser.
* cal-util/test-recur.c (main): Use it
* pcs/cal-backend-file.c (open_cal): Likewise
* gui/comp-editor-factory.c (open_client): Add the OpenClient to
the hash before calling cal_client_open_calendar, since in some
failure cases, that will call cal_opened_cb (which will free the
oc) with a failure immediately, causing a crash if we then try to
deref it.
svn path=/trunk/; revision=20492
Diffstat (limited to 'calendar/gui')
-rw-r--r-- | calendar/gui/comp-editor-factory.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/calendar/gui/comp-editor-factory.c b/calendar/gui/comp-editor-factory.c index 404b0ab5a6..6c40a0d644 100644 --- a/calendar/gui/comp-editor-factory.c +++ b/calendar/gui/comp-editor-factory.c @@ -514,6 +514,8 @@ open_client (CompEditorFactory *factory, const char *uristr) g_signal_connect (oc->client, "cal_opened", G_CALLBACK (cal_opened_cb), oc); + g_hash_table_insert (priv->uri_client_hash, oc->uri, oc); + if (!cal_client_open_calendar (oc->client, uristr, FALSE)) { g_free (oc->uri); g_object_unref (oc->client); @@ -522,8 +524,6 @@ open_client (CompEditorFactory *factory, const char *uristr) return NULL; } - g_hash_table_insert (priv->uri_client_hash, oc->uri, oc); - return oc; } |