res_calendar: Plug memory leak and micro-optimization
authorSean Bright <sean.bright@gmail.com>
Wed, 13 Sep 2017 19:14:25 +0000 (15:14 -0400)
committerSean Bright <sean.bright@gmail.com>
Tue, 19 Sep 2017 11:09:52 +0000 (07:09 -0400)
ast_variables_destroy is NULL safe, so there is no need to check its
argument before passing it.

ASTERISK-25524 #close
Reported by: Jesper

Change-Id: Ib0f8057642e9d471960f1a79fd42e5a3ce587d3b

res/res_calendar.c
res/res_calendar_caldav.c

index bf385db..3369f38 100644 (file)
@@ -339,10 +339,7 @@ static void calendar_destructor(void *obj)
        }
        ast_calendar_clear_events(cal);
        ast_string_field_free_memory(cal);
-       if (cal->vars) {
-               ast_variables_destroy(cal->vars);
-               cal->vars = NULL;
-       }
+       ast_variables_destroy(cal->vars);
        ao2_ref(cal->events, -1);
        ao2_unlock(cal);
 }
index b6822b0..248c80e 100644 (file)
@@ -78,6 +78,7 @@ static void caldav_destructor(void *obj)
        if (pvt->session) {
                ne_session_destroy(pvt->session);
        }
+       ne_uri_free(&pvt->uri);
        ast_string_field_free_memory(pvt);
 
        ao2_callback(pvt->events, OBJ_UNLINK | OBJ_NODATA | OBJ_MULTIPLE, NULL, NULL);