diff options
-rw-r--r-- | camel/ChangeLog | 6 | ||||
-rw-r--r-- | camel/camel-stream-process.c | 15 |
2 files changed, 9 insertions, 12 deletions
diff --git a/camel/ChangeLog b/camel/ChangeLog index 00df1f6bf9..9f02d6f680 100644 --- a/camel/ChangeLog +++ b/camel/ChangeLog @@ -1,3 +1,9 @@ +2003-12-10 Not Zed <NotZed@Ximian.com> + + * camel-stream-process.c (do_exec_command): remove dthe clearenv + stuff, not sure why its there. s/setenv/putenv/ for portability. + See Bug #51767. + 2003-12-08 Jeffrey Stedfast <fejj@ximian.com> * camel-mime-utils.c (header_decode_rfc2184_param): Revert the diff --git a/camel/camel-stream-process.c b/camel/camel-stream-process.c index 6a48ae40d0..293cd2b69f 100644 --- a/camel/camel-stream-process.c +++ b/camel/camel-stream-process.c @@ -33,6 +33,7 @@ #include <sys/wait.h> #include <fcntl.h> #include <unistd.h> +#include <stdlib.h> #include <errno.h> #include <limits.h> #include <stdio.h> @@ -224,18 +225,8 @@ do_exec_command (int fd, const char *command, char **env) /* Set up child's environment. We _add_ to it, don't use execle, because otherwise we'd destroy stuff like SSH_AUTH_SOCK etc. */ - for ( ; env && *env; env++) { - char *eq = strchr (*env, '='); - - if (!eq) { - unsetenv (*env); - continue; - } - - *eq++ = '\0'; - - setenv (*env, eq, 1); - } + for ( ; env && *env; env++) + putenv(*env); execl ("/bin/sh", "/bin/sh", "-c", command, NULL); |