summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorEric Andersen <andersen@codepoet.org>2000-12-12 23:45:36 +0000
committerEric Andersen <andersen@codepoet.org>2000-12-12 23:45:36 +0000
commitf361ac29b0f94c85a8aeb1185301f8197f64fe42 (patch)
tree8c0b218f0ea3f30822a66001ce72bdfe669d825f
parent483262f633837f98c02261fb035dd25845cbe893 (diff)
Mem leak fix from Matt Kraai
-rw-r--r--lash.c6
-rw-r--r--sh.c6
-rw-r--r--shell/lash.c6
3 files changed, 3 insertions, 15 deletions
diff --git a/lash.c b/lash.c
index 9fc215c98..164d6f5c5 100644
--- a/lash.c
+++ b/lash.c
@@ -663,7 +663,7 @@ static int setupRedirections(struct childProgram *prog)
static int getCommand(FILE * source, char *command)
{
- char *user,buf[255],*s;
+ char user[9],buf[255],*s;
if (source == NULL) {
if (local_pending_command) {
@@ -678,7 +678,6 @@ static int getCommand(FILE * source, char *command)
/* get User Name and setup prompt */
strcpy(prompt,( geteuid() != 0 ) ? "$ ":"# ");
- user=xcalloc(sizeof(int), 9);
my_getpwuid(user, geteuid());
/* get HostName */
@@ -723,9 +722,6 @@ static int getCommand(FILE * source, char *command)
#endif
}
- /* don't leak memory */
- free(user);
-
if (!fgets(command, BUFSIZ - 2, source)) {
if (source == stdin)
printf("\n");
diff --git a/sh.c b/sh.c
index 9fc215c98..164d6f5c5 100644
--- a/sh.c
+++ b/sh.c
@@ -663,7 +663,7 @@ static int setupRedirections(struct childProgram *prog)
static int getCommand(FILE * source, char *command)
{
- char *user,buf[255],*s;
+ char user[9],buf[255],*s;
if (source == NULL) {
if (local_pending_command) {
@@ -678,7 +678,6 @@ static int getCommand(FILE * source, char *command)
/* get User Name and setup prompt */
strcpy(prompt,( geteuid() != 0 ) ? "$ ":"# ");
- user=xcalloc(sizeof(int), 9);
my_getpwuid(user, geteuid());
/* get HostName */
@@ -723,9 +722,6 @@ static int getCommand(FILE * source, char *command)
#endif
}
- /* don't leak memory */
- free(user);
-
if (!fgets(command, BUFSIZ - 2, source)) {
if (source == stdin)
printf("\n");
diff --git a/shell/lash.c b/shell/lash.c
index 9fc215c98..164d6f5c5 100644
--- a/shell/lash.c
+++ b/shell/lash.c
@@ -663,7 +663,7 @@ static int setupRedirections(struct childProgram *prog)
static int getCommand(FILE * source, char *command)
{
- char *user,buf[255],*s;
+ char user[9],buf[255],*s;
if (source == NULL) {
if (local_pending_command) {
@@ -678,7 +678,6 @@ static int getCommand(FILE * source, char *command)
/* get User Name and setup prompt */
strcpy(prompt,( geteuid() != 0 ) ? "$ ":"# ");
- user=xcalloc(sizeof(int), 9);
my_getpwuid(user, geteuid());
/* get HostName */
@@ -723,9 +722,6 @@ static int getCommand(FILE * source, char *command)
#endif
}
- /* don't leak memory */
- free(user);
-
if (!fgets(command, BUFSIZ - 2, source)) {
if (source == stdin)
printf("\n");