fix bug caused by main app & libc having map set; cannot free them
[musl] / src / ldso / dynlink.c
index b8c26ac..93a4b44 100644 (file)
@@ -572,7 +572,7 @@ static void free_all(struct dso *p)
        struct dso *n;
        while (p) {
                n = p->next;
-               if (p->map) free(p);
+               if (p->map && p!=libc && p!=head) free(p);
                p = n;
        }
 }