aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorPaul Eggert2011-07-27 18:46:23 -0700
committerPaul Eggert2011-07-27 18:46:23 -0700
commit5266b4bb6079efcf14e5d4fc633636a65c4b7e80 (patch)
tree1b82bb2e0af62a063da0affa88ead972e42be1d7 /src
parent044c22e545acef592ed95e4e3bb9f8aeff67291a (diff)
downloademacs-5266b4bb6079efcf14e5d4fc633636a65c4b7e80.tar.gz
emacs-5266b4bb6079efcf14e5d4fc633636a65c4b7e80.zip
* callproc.c (Fcall_process): Use 'volatile' to avoid vfork clobbering.
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog4
-rw-r--r--src/callproc.c2
2 files changed, 6 insertions, 0 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 10f6e326891..2625c6f9aad 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,5 +1,9 @@
12011-07-28 Paul Eggert <eggert@cs.ucla.edu> 12011-07-28 Paul Eggert <eggert@cs.ucla.edu>
2 2
3 * callproc.c (Fcall_process): Use 'volatile' to avoid vfork clobbering.
4
52011-07-28 Paul Eggert <eggert@cs.ucla.edu>
6
3 Integer signedness and overflow and related fixes. (Bug#9079) 7 Integer signedness and overflow and related fixes. (Bug#9079)
4 8
5 * bidi.c: Integer size and overflow fixes. 9 * bidi.c: Integer size and overflow fixes.
diff --git a/src/callproc.c b/src/callproc.c
index ad3eddbdd39..f148f6233d4 100644
--- a/src/callproc.c
+++ b/src/callproc.c
@@ -603,6 +603,7 @@ usage: (call-process PROGRAM &optional INFILE BUFFER DISPLAY &rest ARGS) */)
603 603
604 /* vfork, and prevent local vars from being clobbered by the vfork. */ 604 /* vfork, and prevent local vars from being clobbered by the vfork. */
605 { 605 {
606 int volatile fd1_volatile = fd1;
606 int volatile fd_error_volatile = fd_error; 607 int volatile fd_error_volatile = fd_error;
607 int volatile fd_output_volatile = fd_output; 608 int volatile fd_output_volatile = fd_output;
608 int volatile output_to_buffer_volatile = output_to_buffer; 609 int volatile output_to_buffer_volatile = output_to_buffer;
@@ -610,6 +611,7 @@ usage: (call-process PROGRAM &optional INFILE BUFFER DISPLAY &rest ARGS) */)
610 611
611 pid = vfork (); 612 pid = vfork ();
612 613
614 fd1 = fd1_volatile;
613 fd_error = fd_error_volatile; 615 fd_error = fd_error_volatile;
614 fd_output = fd_output_volatile; 616 fd_output = fd_output_volatile;
615 output_to_buffer = output_to_buffer_volatile; 617 output_to_buffer = output_to_buffer_volatile;