fix free in realpath when using ASAN

This commit is contained in:
Daan 2024-03-29 11:17:21 -07:00
parent 6b4f3f6223
commit 8f7d1e9a41

View file

@ -396,7 +396,8 @@ char* mi_heap_realpath(mi_heap_t* heap, const char* fname, char* resolved_name)
char* rname = realpath(fname, NULL); char* rname = realpath(fname, NULL);
if (rname == NULL) return NULL; if (rname == NULL) return NULL;
char* result = mi_heap_strdup(heap, rname); char* result = mi_heap_strdup(heap, rname);
free(rname); // use regular free! (which may be redirected to our free but that's ok) mi_cfree(rname); // use checked free (which may be redirected to our free but that's ok)
// note: with ASAN realpath is intercepted and mi_cfree may leak the returned pointer :-(
return result; return result;
} }
/* /*