diff --git a/src/client/curl/download.c b/src/client/curl/download.c index 6e9d79f3..393f0b9f 100644 --- a/src/client/curl/download.c +++ b/src/client/curl/download.c @@ -264,6 +264,9 @@ static void CL_StartHTTPDownload (dlqueue_t *entry, dlhandle_t *dl) } // Make sure that the download handle is in empty state. + if (dl->tempBuffer) { + free(dl->tempBuffer); + } dl->tempBuffer = NULL; dl->fileSize = 0; dl->position = 0; @@ -477,6 +480,10 @@ static void CL_ParseFileList(dlhandle_t *dl) return; } + if (!dl->tempBuffer) { + return; + } + char *list = dl->tempBuffer; for (;;)