emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] master ee7bc98: Prevent NS event loop being re-entered (bu


From: Alan Third
Subject: [Emacs-diffs] master ee7bc98: Prevent NS event loop being re-entered (bug#11049)
Date: Thu, 7 Jul 2016 19:52:41 +0000 (UTC)

branch: master
commit ee7bc988603ca16e6ef37fbbc377d82db37954c0
Author: Alan Third <address@hidden>
Commit: Alan Third <address@hidden>

    Prevent NS event loop being re-entered (bug#11049)
    
    * nsterm.m (ns_read_socket, ns_select): Return -1 if already in event
    loop instead of aborting.
---
 src/nsterm.m |    6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/src/nsterm.m b/src/nsterm.m
index bd477a4..a6160ed 100644
--- a/src/nsterm.m
+++ b/src/nsterm.m
@@ -4098,6 +4098,9 @@ ns_read_socket (struct terminal *terminal, struct 
input_event *hold_quit)
 
   NSTRACE_WHEN (NSTRACE_GROUP_EVENTS, "ns_read_socket");
 
+  if (apploopnr > 0)
+    return -1; /* Already within event loop. */
+
 #ifdef HAVE_NATIVE_FS
   check_native_fs ();
 #endif
@@ -4182,6 +4185,9 @@ ns_select (int nfds, fd_set *readfds, fd_set *writefds,
 
   NSTRACE_WHEN (NSTRACE_GROUP_EVENTS, "ns_select");
 
+  if (apploopnr > 0)
+    return -1; /* Already within event loop. */
+
 #ifdef HAVE_NATIVE_FS
   check_native_fs ();
 #endif



reply via email to

[Prev in Thread] Current Thread [Next in Thread]