diff options
author | cinap_lenrek <cinap_lenrek@rei2> | 2012-01-29 03:48:24 +0100 |
---|---|---|
committer | cinap_lenrek <cinap_lenrek@rei2> | 2012-01-29 03:48:24 +0100 |
commit | 83b56186e46087b06b2af8d58ff293eda6be6bad (patch) | |
tree | da99acae3014d96918494cf849dbd58e5ca351a7 /sys/src/cmd/plumb | |
parent | 105ebc327abe965cf11242e6c300d28979938f5e (diff) |
plumber: fix memory leaks
Diffstat (limited to 'sys/src/cmd/plumb')
-rw-r--r-- | sys/src/cmd/plumb/plumber.c | 3 | ||||
-rw-r--r-- | sys/src/cmd/plumb/rules.c | 2 |
2 files changed, 5 insertions, 0 deletions
diff --git a/sys/src/cmd/plumb/plumber.c b/sys/src/cmd/plumb/plumber.c index d0bd9c14e..e6c18079a 100644 --- a/sys/src/cmd/plumb/plumber.c +++ b/sys/src/cmd/plumb/plumber.c @@ -122,6 +122,7 @@ emalloc(long n) p = malloc(n); if(p == nil) error("malloc failed: %r"); + setmalloctag(p, getcallerpc(&n)); memset(p, 0, n); return p; } @@ -132,6 +133,7 @@ erealloc(void *p, long n) p = realloc(p, n); if(p == nil) error("realloc failed: %r"); + setrealloctag(p, getcallerpc(&p)); return p; } @@ -143,5 +145,6 @@ estrdup(char *s) t = strdup(s); if(t == nil) error("estrdup failed: %r"); + setmalloctag(t, getcallerpc(&s)); return t; } diff --git a/sys/src/cmd/plumb/rules.c b/sys/src/cmd/plumb/rules.c index 262f6d67f..806ba39b1 100644 --- a/sys/src/cmd/plumb/rules.c +++ b/sys/src/cmd/plumb/rules.c @@ -123,6 +123,7 @@ popinput(void) Bterm(in->fd); free(in->fd); } + free(in->file); free(in); return 1; } @@ -572,6 +573,7 @@ readruleset(void) parseerror("too many ports"); if(lookup(r->qarg, badports) >= 0) parseerror("illegal port name %s", r->qarg); + free(rs->port); rs->port = estrdup(r->qarg); }else ncmd++; /* start or client rule */ |