Blob Blame History Raw
diff -dur gcl-2.6.8.ORIG/o/run_process.c gcl-2.6.8/o/run_process.c
--- gcl-2.6.8.ORIG/o/run_process.c	2006-09-15 11:45:18.000000000 -0600
+++ gcl-2.6.8/o/run_process.c	2008-12-29 17:22:10.000000000 -0700
@@ -526,10 +526,10 @@
   fdout = ostream->sm.sm_int0;
   if (fork() == 0)
     { /* the child --- replace standard in and out with descriptors given */
-      close(0);
-      dup(fdin);
-      close(1);
-      dup(fdout);
+      dup2(fdin, 0);
+      dup2(fdout, 1);
+      close(fdin);
+      close(fdout);
       fprintf(stderr, "\n***** Spawning process %s ", pname);
       if (execvp(pname, argv) == -1)
 	{