a slightly involved work-around to prevent the debug-tracing from logging
a free-without-alloc as the first call
diff --git a/src/main.c b/src/main.c
index 12ff3db..1558d18 100644
--- a/src/main.c
+++ b/src/main.c
@@ -2934,8 +2934,13 @@
env = curlx_getenv("CURL_MEMDEBUG");
if(env) {
/* use the value as file name */
- curl_memdebug(env);
+ char *s = strdup(env);
curl_free(env);
+ curl_memdebug(s);
+ free(s);
+ /* this weird strdup() and stuff here is to make the curl_free() get
+ called before the memdebug() as otherwise the memdebug tracing will
+ with tracing a free() without an alloc! */
}
env = curlx_getenv("CURL_MEMLIMIT");
if(env) {