diff --git a/src/xpdev/str_list.c b/src/xpdev/str_list.c index c7a8ad8194e1f3a30492e2e31924bc6575849de7..b616fa19260d70dd609c6fdef83fdbd881a1de6c 100644 --- a/src/xpdev/str_list.c +++ b/src/xpdev/str_list.c @@ -145,6 +145,9 @@ char* strListReplace(const str_list_t list, size_t index, const char* str) char* buf; size_t count; + if(str==NULL) + return(NULL); + count = strListCount(list); if(index==STR_LIST_LAST_INDEX && count) @@ -189,6 +192,9 @@ char* strListAppend(str_list_t* list, const char* str, size_t index) { char* buf; + if(str==NULL) + return(NULL); + if((buf=(char*)malloc(strlen(str)+1))==NULL) return(NULL); @@ -216,6 +222,9 @@ char* strListInsert(str_list_t* list, const char* str, size_t index) { char* buf; + if(str==NULL) + return(NULL); + if((buf=(char*)malloc(strlen(str)+1))==NULL) return(NULL); @@ -242,6 +251,9 @@ str_list_t strListSplit(str_list_t* lp, char* str, const char* delimit) char* token; str_list_t list; + if(str==NULL || delimit==NULL) + return(NULL); + if(lp==NULL) { if((list = strListInit())==NULL) return(0); @@ -261,6 +273,9 @@ str_list_t strListSplitCopy(str_list_t* list, const char* str, const char* delim { char* buf; + if(str==NULL) + return(NULL); + if((buf=(char*)malloc(strlen(str)+1))==NULL) return(NULL);