(sys_subshell): Fix last change.
authorEli Zaretskii <eliz@gnu.org>
Mon, 4 Mar 2002 20:15:56 +0000 (20:15 +0000)
committerEli Zaretskii <eliz@gnu.org>
Mon, 4 Mar 2002 20:15:56 +0000 (20:15 +0000)
src/sysdep.c

index ef5000e..f79311f 100644 (file)
@@ -851,19 +851,20 @@ sys_subshell ()
 
 #ifdef MSDOS    /* Demacs 1.1.2 91/10/20 Manabu Higashida */
       {
-       char *old_pwd = getenv ("PWD");
+       char *epwd = getenv ("PWD");
+       char old_pwd[MAXPATHLEN+1+4];
 
        /* If PWD is set, pass it with corrected value.  */
-       if (old_pwd)
+       if (epwd)
          {
-           old_pwd = xstrdup (old_pwd);
+           strcpy (old_pwd, epwd);
            if (str[len - 1] == '/')
              str[len - 1] = '\0';
            setenv ("PWD", str, 1);
          }
        st = system (sh);
        chdir (oldwd);
-       if (old_pwd)
+       if (epwd)
          putenv (old_pwd);     /* restore previous value */
       }
 #if 0  /* This is also reported if last command executed in subshell failed, KFS */