diff src/callproc.c @ 365:30d2cfa1092a r21-1-12

Import from CVS: tag r21-1-12
author cvs
date Mon, 13 Aug 2007 11:00:12 +0200
parents 972bbb6d6ca2
children a4f53d9b3154
line wrap: on
line diff
--- a/src/callproc.c	Mon Aug 13 10:59:30 2007 +0200
+++ b/src/callproc.c	Mon Aug 13 11:00:12 2007 +0200
@@ -372,10 +372,12 @@
 
     if (fd_error < 0)
       {
+	int save_errno = errno;
 	close (filefd);
 	close (fd[0]);
 	if (fd1 >= 0)
 	  close (fd1);
+	errno = save_errno;
 	report_file_error ("Cannot open", Fcons(error_file, Qnil));
       }
 
@@ -438,8 +440,10 @@
 #ifndef WINDOWSNT
   if (pid < 0)
     {
+      int save_errno = errno;
       if (fd[0] >= 0)
 	close (fd[0]);
+      errno = save_errno;
       report_file_error ("Doing fork", Qnil);
     }
 #endif