mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2025-01-23 18:47:57 +00:00
(Fcall_process) [MSDOS]:
Initialize fd[0]; unlink `tempfile' in case of errors. Make the `tempfile' parameter passed to `report_file_error' be a Lisp string. (Fcall_process): When fd_error is negative, don't close fd[0] if it's same as filefd. If stderr is redirected to NULL_DEVICE, make `report_file_error' print the name of device. Make the arguments a cons cell.
This commit is contained in:
parent
f3e9aa2d38
commit
6f89d28ab4
@ -350,10 +350,12 @@ If you quit, the process is killed with SIGINT, or SIGKILL if you quit again.")
|
|||||||
if (outfilefd < 0)
|
if (outfilefd < 0)
|
||||||
{
|
{
|
||||||
close (filefd);
|
close (filefd);
|
||||||
report_file_error ("Opening process output file", Fcons (tempfile, Qnil));
|
report_file_error ("Opening process output file",
|
||||||
|
Fcons (build_string (tempfile), Qnil));
|
||||||
}
|
}
|
||||||
|
fd[0] = filefd;
|
||||||
fd[1] = outfilefd;
|
fd[1] = outfilefd;
|
||||||
#endif
|
#endif /* MSDOS */
|
||||||
|
|
||||||
if (INTEGERP (buffer))
|
if (INTEGERP (buffer))
|
||||||
fd[1] = open (NULL_DEVICE, O_WRONLY), fd[0] = -1;
|
fd[1] = open (NULL_DEVICE, O_WRONLY), fd[0] = -1;
|
||||||
@ -404,10 +406,17 @@ If you quit, the process is killed with SIGINT, or SIGKILL if you quit again.")
|
|||||||
if (fd_error < 0)
|
if (fd_error < 0)
|
||||||
{
|
{
|
||||||
close (filefd);
|
close (filefd);
|
||||||
close (fd[0]);
|
if (fd[0] != filefd)
|
||||||
|
close (fd[0]);
|
||||||
if (fd1 >= 0)
|
if (fd1 >= 0)
|
||||||
close (fd1);
|
close (fd1);
|
||||||
report_file_error ("Cannot open", error_file);
|
#ifdef MSDOS
|
||||||
|
unlink (tempfile);
|
||||||
|
#endif
|
||||||
|
report_file_error ("Cannot redirect stderr",
|
||||||
|
Fcons ((NILP (error_file)
|
||||||
|
? build_string (NULL_DEVICE) : error_file),
|
||||||
|
Qnil));
|
||||||
}
|
}
|
||||||
#ifdef MSDOS /* MW, July 1993 */
|
#ifdef MSDOS /* MW, July 1993 */
|
||||||
/* ??? Someone who knows MSDOG needs to check whether this properly
|
/* ??? Someone who knows MSDOG needs to check whether this properly
|
||||||
|
Loading…
Reference in New Issue
Block a user