]> git.eshelyaron.com Git - emacs.git/commitdiff
(win32_spawnve): Accept program names without executable suffixes.
authorRichard M. Stallman <rms@gnu.org>
Thu, 15 Jun 1995 15:29:00 +0000 (15:29 +0000)
committerRichard M. Stallman <rms@gnu.org>
Thu, 15 Jun 1995 15:29:00 +0000 (15:29 +0000)
src/w32proc.c

index 981876e6b1625fc3a3a35b748323b0d94aeea485..e7834d6a452ce41f89d92f5d2f467355631d8169 100644 (file)
@@ -427,10 +427,30 @@ char ppid_env_var_buffer[64];
 int 
 win32_spawnve (int mode, char *cmdname, char **argv, char **envp)
 {
+  Lisp_Object program, full;
   char *cmdline, *env, *parg, **targ;
   int arglen;
   PROCESS_INFORMATION pi;
-  
+
+  /* Handle executable names without an executable suffix.  */
+  program = make_string (cmdname, strlen (cmdname));
+  if (NILP (Ffile_executable_p (program)))
+    {
+      struct gcpro gcpro1;
+      
+      full = Qnil;
+      GCPRO1 (program);
+      openp (Vexec_path, program, EXEC_SUFFIXES, &full, 1);
+      UNGCPRO;
+      if (NILP (full))
+       {
+         errno = EINVAL;
+         return -1;
+       }
+      cmdname = XSTRING (full)->data;
+      argv[0] = cmdname;
+    }
+
   if (child_proc_count == MAX_CHILDREN)
     {
       errno = EAGAIN;