diff options
author | Eric Andersen <andersen@codepoet.org> | 2001-03-06 23:44:39 +0300 |
---|---|---|
committer | Eric Andersen <andersen@codepoet.org> | 2001-03-06 23:44:39 +0300 |
commit | 54851d3c6523b544c127fa0420e4b58fb1f046f4 (patch) | |
tree | 360c6764e2931f9f14f31b4a6fd90585d9d256b4 | |
parent | 07f2f3917a08eea89953c8f0c3f1bc6ef52879b4 (diff) |
Fixed a memory leak in lash. It seems that close_all was calling close()
directly instead of calling mark_closed(), which allowed the memory allocated
by mark_open() to never be freed.
-Erik
-rw-r--r-- | lash.c | 2 | ||||
-rw-r--r-- | sh.c | 2 | ||||
-rw-r--r-- | shell/lash.c | 2 |
3 files changed, 3 insertions, 3 deletions
@@ -632,7 +632,7 @@ static void close_all() { struct close_me *c; for (c=close_me_head; c; c=c->next) { - close(c->fd); + mark_closed(c->fd); } close_me_head = NULL; } @@ -632,7 +632,7 @@ static void close_all() { struct close_me *c; for (c=close_me_head; c; c=c->next) { - close(c->fd); + mark_closed(c->fd); } close_me_head = NULL; } diff --git a/shell/lash.c b/shell/lash.c index 57d969e40..11016a009 100644 --- a/shell/lash.c +++ b/shell/lash.c @@ -632,7 +632,7 @@ static void close_all() { struct close_me *c; for (c=close_me_head; c; c=c->next) { - close(c->fd); + mark_closed(c->fd); } close_me_head = NULL; } |