1
0
mirror of https://github.com/osmarks/ngircd.git synced 2024-10-27 20:36:18 +00:00

Fix memory leak in portabtest Check_strtok_r()

Fix the following Clang "LeakSanitizer" error (which isn't quite
relevant in this test program, but anyway):

  ERROR: LeakSanitizer: detected memory leaks

  Direct leak of 7 byte(s) in 1 object(s) allocated from:
      #0 0x7f8c4d022810 in strdup (/lib/x86_64-linux-gnu/libasan.so.5+0x3a810)
      #1 0x5601a801491a in Check_strtok_r (/net/arthur/home/alex/Develop/ngIRCd/ngIRCd.git/src/portab/portabtest+0x291a)
      #2 0x5601a8014d77 in main (/net/arthur/home/alex/Develop/ngIRCd/ngIRCd.git/src/portab/portabtest+0x2d77)
      #3 0x7f8c4c69009a in __libc_start_main ../csu/libc-start.c:308

  SUMMARY: AddressSanitizer: 7 byte(s) leaked in 1 allocation(s).
  FAIL: portabtest
This commit is contained in:
Alexander Barton 2020-02-15 14:56:07 +01:00
parent e7cb9b1a00
commit 8d173a3328

View File

@ -104,9 +104,10 @@ Check_strlcat(void)
static void
Check_strtok_r(void)
{
char *ptr, *last;
char *str, *ptr, *last;
ptr = strdup("12,abc");
str = ptr;
ptr = strtok_r(ptr, ",", &last);
if (!ptr)
@ -123,6 +124,8 @@ Check_strtok_r(void)
ptr = strtok_r(NULL, ",", &last);
if (ptr)
Panic("strtok_r result #3");
free(str);
}
#ifdef PROTOTYPES