Check seplen and len before malloc'ing "tokens"
This commit is contained in:
parent
bf9fd5ffa2
commit
c040cbd625
12
src/sds.c
12
src/sds.c
@ -298,15 +298,17 @@ int sdscmp(sds s1, sds s2) {
|
||||
*/
|
||||
sds *sdssplitlen(char *s, int len, char *sep, int seplen, int *count) {
|
||||
int elements = 0, slots = 5, start = 0, j;
|
||||
sds *tokens;
|
||||
|
||||
sds *tokens = zmalloc(sizeof(sds)*slots);
|
||||
if (seplen < 1 || len < 0) return NULL;
|
||||
|
||||
tokens = zmalloc(sizeof(sds)*slots);
|
||||
#ifdef SDS_ABORT_ON_OOM
|
||||
if (tokens == NULL) sdsOomAbort();
|
||||
#else
|
||||
if (tokens == NULL) return NULL;
|
||||
#endif
|
||||
if (seplen < 1 || len < 0 || tokens == NULL) {
|
||||
*count = 0;
|
||||
return NULL;
|
||||
}
|
||||
|
||||
if (len == 0) {
|
||||
*count = 0;
|
||||
return tokens;
|
||||
|
Loading…
x
Reference in New Issue
Block a user