aboutsummaryrefslogtreecommitdiffstats
path: root/calendar/cal-util/calobj.c
diff options
context:
space:
mode:
Diffstat (limited to 'calendar/cal-util/calobj.c')
-rw-r--r--calendar/cal-util/calobj.c14
1 files changed, 12 insertions, 2 deletions
diff --git a/calendar/cal-util/calobj.c b/calendar/cal-util/calobj.c
index 6402937938..0ede42ebc6 100644
--- a/calendar/cal-util/calobj.c
+++ b/calendar/cal-util/calobj.c
@@ -773,8 +773,18 @@ ical_object_create_from_vobject (VObject *o, const char *object_name)
/* url */
if (has (o, VCURLProp)){
- ical->url = g_strdup (str_val (vo));
- free (the_str);
+ /* There seems to be a problem with the URL property. For some
+ reason an empty property gets saved, vObjectUStringZValue
+ returns NULL and fakeCString crashes. So we check for NULL.
+ */
+ const wchar_t *zval;
+
+ zval = vObjectUStringZValue (o);
+ if (zval) {
+ the_str = fakeCString (zval);
+ ical->url = g_strdup (the_str);
+ free (the_str);
+ }
}
/* dalarm */