diff options
Diffstat (limited to 'src/libicalss/icalspanlist.c')
-rw-r--r-- | src/libicalss/icalspanlist.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/libicalss/icalspanlist.c b/src/libicalss/icalspanlist.c index 3ea73ca..456abb1 100644 --- a/src/libicalss/icalspanlist.c +++ b/src/libicalss/icalspanlist.c @@ -175,6 +175,7 @@ icalspanlist* icalspanlist_new(icalset *set, if ((freetime=(struct icaltime_span *) malloc(sizeof(struct icaltime_span))) == 0){ icalerror_set_errno(ICAL_NEWFAILED_ERROR); + icalspanlist_free(sl); return 0; } @@ -207,6 +208,7 @@ icalspanlist* icalspanlist_new(icalset *set, if ((freetime=(struct icaltime_span *) malloc(sizeof(struct icaltime_span))) == 0){ icalerror_set_errno(ICAL_NEWFAILED_ERROR); + icalspanlist_free(sl); return 0; } @@ -541,6 +543,7 @@ icalspanlist *icalspanlist_from_vfreebusy(icalcomponent* comp) if (s == 0) { icalerror_set_errno(ICAL_NEWFAILED_ERROR); + icalspanlist_free(sl); return 0; } @@ -552,6 +555,7 @@ icalspanlist *icalspanlist_from_vfreebusy(icalcomponent* comp) case ICAL_FBTYPE_NONE: case ICAL_FBTYPE_X: s->is_busy = 1; + break; default: s->is_busy = 0; } |