[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] /srv/bzr/emacs/trunk r110781: Fix a race condition in wait
From: |
Chong Yidong |
Subject: |
[Emacs-diffs] /srv/bzr/emacs/trunk r110781: Fix a race condition in wait_reading_process_output (tiny change). |
Date: |
Sat, 03 Nov 2012 23:44:59 +0800 |
User-agent: |
Bazaar (2.5.0) |
------------------------------------------------------------
revno: 110781
fixes bug: http://debbugs.gnu.org/11536
committer: Chong Yidong <address@hidden>
branch nick: trunk
timestamp: Sat 2012-11-03 23:44:59 +0800
message:
Fix a race condition in wait_reading_process_output (tiny change).
* src/process.c (wait_reading_process_output): Avoid a race condition
with SIGIO delivery.
modified:
src/ChangeLog
src/process.c
=== modified file 'src/ChangeLog'
--- a/src/ChangeLog 2012-11-03 15:24:00 +0000
+++ b/src/ChangeLog 2012-11-03 15:44:59 +0000
@@ -1,3 +1,8 @@
+2012-11-03 Jim Paris <address@hidden> (tiny change)
+
+ * process.c (wait_reading_process_output): Avoid a race condition
+ with SIGIO delivery (Bug#11536).
+
2012-11-03 Chong Yidong <address@hidden>
* buffer.c (cursor_type): Untabify docstring.
=== modified file 'src/process.c'
--- a/src/process.c 2012-10-31 17:27:29 +0000
+++ b/src/process.c 2012-11-03 15:44:59 +0000
@@ -4697,9 +4697,12 @@
/* If we woke up due to SIGWINCH, actually change size now. */
do_pending_window_change (0);
+ /* The following optimization fails if SIGIO is received between
+ set_waiting_for_input and select (Bug#11536).
if ((time_limit || nsecs) && nfds == 0 && ! timeout_reduced_for_timers)
- /* We waited the full specified time, so return now. */
break;
+ */
+
if (nfds < 0)
{
if (xerrno == EINTR)
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] /srv/bzr/emacs/trunk r110781: Fix a race condition in wait_reading_process_output (tiny change).,
Chong Yidong <=