]> Cypherpunks repositories - gostls13.git/commitdiff
5l, 6l, 8l, ld: remove memory leaks
authorShenghou Ma <minux.ma@gmail.com>
Sun, 29 Jan 2012 17:46:26 +0000 (12:46 -0500)
committerRuss Cox <rsc@golang.org>
Sun, 29 Jan 2012 17:46:26 +0000 (12:46 -0500)
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/5569085

src/cmd/5l/asm.c
src/cmd/6l/asm.c
src/cmd/8l/asm.c
src/cmd/ld/go.c

index fe3a2f3f2aa0a269c1ef331cf352faa76f80a04f..df33fbe251050856cc4965d0aebdc0f9d601c8b6 100644 (file)
@@ -91,6 +91,7 @@ needlib(char *name)
        /* reuse hash code in symbol table */
        p = smprint(".dynlib.%s", name);
        s = lookup(p, 0);
+       free(p);
        if(s->type == 0) {
                s->type = 100;  // avoid SDATA, etc.
                return 1;
index 7d36b170eb694f81b4e4aabb44294b3cc7ea2d5f..121aa8613ed52ae30ad4fcdc7bb33cf94b10b6a7 100644 (file)
@@ -112,6 +112,7 @@ needlib(char *name)
        /* reuse hash code in symbol table */
        p = smprint(".elfload.%s", name);
        s = lookup(p, 0);
+       free(p);
        if(s->type == 0) {
                s->type = 100;  // avoid SDATA, etc.
                return 1;
index 0fe4cf1123cb27cf265a944c872088757cecb5f8..dcaa0b192b8cb324ebc6c4fb49dc78600e1f6388 100644 (file)
@@ -108,6 +108,7 @@ needlib(char *name)
        /* reuse hash code in symbol table */
        p = smprint(".dynlib.%s", name);
        s = lookup(p, 0);
+       free(p);
        if(s->type == 0) {
                s->type = 100;  // avoid SDATA, etc.
                return 1;
index 2bda628cdecb9a5e4f06f4d30baafb54c7f78f65..3271be1f5970d4dd4b65186f905fbd90c9a60715 100644 (file)
@@ -482,6 +482,7 @@ loaddynimport(char *file, char *pkg, char *p, int n)
                if(q)
                        *q++ = '\0';
                s = lookup(name, 0);
+               free(name);
                if(s->type == 0 || s->type == SXREF) {
                        s->dynimplib = lib;
                        s->dynimpname = def;