diff options
-rw-r--r-- | api.c | 9 | ||||
-rw-r--r-- | string-tick.c | 3 |
2 files changed, 12 insertions, 0 deletions
@@ -614,11 +614,17 @@ Info_Array* iex_get_valid_symbols(void) { } void api_news_destroy(News** phNews) { + if (*phNews == NULL) + return; + free(*phNews); *phNews = NULL; } void api_info_destroy(Info** phInfo) { + if (*phInfo == NULL) + return; + Info* pInfo = *phInfo; free(pInfo->points); if (pInfo->articles != NULL) @@ -634,6 +640,9 @@ void api_info_destroy(Info** phInfo) { } void api_info_array_destroy(Info_Array** phInfo_Array) { + if (*phInfo_Array == NULL) + return; + Info_Array* pInfo_Array = *phInfo_Array; for (size_t i = 0; i < pInfo_Array->length; i++) api_info_destroy(&pInfo_Array->array[i]); diff --git a/string-tick.c b/string-tick.c index 323e2fc37c8a..66a54a1a9ec3 100644 --- a/string-tick.c +++ b/string-tick.c @@ -81,6 +81,9 @@ void string_write_file(String* pString, char* file_name) { } void string_destroy(String** phString) { + if (*phString == NULL) + return; + String* pString = *phString; free(pString->data); free(*phString); |