1
0
mirror of https://github.com/SoftEtherVPN/SoftEtherVPN.git synced 2024-11-23 01:49:53 +03:00

Mayaqua: add new FreeSafe() function which calls Free() and set the pointer's value to NULL

This commit is contained in:
Davide Beatrici 2018-12-20 02:52:22 +01:00
parent ada06e218e
commit bd01cbff9a
3 changed files with 12 additions and 4 deletions

View File

@ -3777,6 +3777,13 @@ void Free(void *addr)
InternalFree(tag); InternalFree(tag);
} }
// Free and set pointer's value to NULL
void FreeSafe(void **addr)
{
Free(*addr);
*addr = NULL;
}
// Check the memtag // Check the memtag
void CheckMemTag(MEMTAG *tag) void CheckMemTag(MEMTAG *tag)
{ {

View File

@ -276,6 +276,7 @@ void *ZeroMalloc(UINT size);
void *ZeroMallocEx(UINT size, bool zero_clear_when_free); void *ZeroMallocEx(UINT size, bool zero_clear_when_free);
void *ReAlloc(void *addr, UINT size); void *ReAlloc(void *addr, UINT size);
void Free(void *addr); void Free(void *addr);
void FreeSafe(void **addr);
void CheckMemTag(MEMTAG *tag); void CheckMemTag(MEMTAG *tag);
UINT GetMemSize(void *addr); UINT GetMemSize(void *addr);

View File

@ -20564,7 +20564,7 @@ HTTP_HEADER *RecvHttpHeader(SOCK *s)
// Split into tokens // Split into tokens
token = ParseToken(str, " "); token = ParseToken(str, " ");
Free(str); FreeSafe((void **)&str);
if (token->NumTokens < 3) if (token->NumTokens < 3)
{ {
@ -20590,18 +20590,18 @@ HTTP_HEADER *RecvHttpHeader(SOCK *s)
if (IsEmptyStr(str)) if (IsEmptyStr(str))
{ {
// End of header // End of header
Free(str); FreeSafe((void **)&str);
break; break;
} }
if (AddHttpValueStr(header, str) == false) if (AddHttpValueStr(header, str) == false)
{ {
Free(str); FreeSafe((void **)&str);
FreeHttpHeader(header); FreeHttpHeader(header);
break; break;
} }
Free(str); FreeSafe((void **)&str);
} }
return header; return header;