diff options
| author | Alan Third | 2016-06-26 00:10:50 +0100 |
|---|---|---|
| committer | Alan Third | 2016-07-07 20:48:35 +0100 |
| commit | ee7bc988603ca16e6ef37fbbc377d82db37954c0 (patch) | |
| tree | 8f0da119b0c399c634333eefe1a6a17048f1cd8a /src | |
| parent | 5508f06f3283b4129cd70340a58ba608cc810d4e (diff) | |
| download | emacs-ee7bc988603ca16e6ef37fbbc377d82db37954c0.tar.gz emacs-ee7bc988603ca16e6ef37fbbc377d82db37954c0.zip | |
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.
Diffstat (limited to 'src')
| -rw-r--r-- | src/nsterm.m | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/nsterm.m b/src/nsterm.m index bd477a491ff..a6160ed5b2a 100644 --- a/src/nsterm.m +++ b/src/nsterm.m | |||
| @@ -4098,6 +4098,9 @@ ns_read_socket (struct terminal *terminal, struct input_event *hold_quit) | |||
| 4098 | 4098 | ||
| 4099 | NSTRACE_WHEN (NSTRACE_GROUP_EVENTS, "ns_read_socket"); | 4099 | NSTRACE_WHEN (NSTRACE_GROUP_EVENTS, "ns_read_socket"); |
| 4100 | 4100 | ||
| 4101 | if (apploopnr > 0) | ||
| 4102 | return -1; /* Already within event loop. */ | ||
| 4103 | |||
| 4101 | #ifdef HAVE_NATIVE_FS | 4104 | #ifdef HAVE_NATIVE_FS |
| 4102 | check_native_fs (); | 4105 | check_native_fs (); |
| 4103 | #endif | 4106 | #endif |
| @@ -4182,6 +4185,9 @@ ns_select (int nfds, fd_set *readfds, fd_set *writefds, | |||
| 4182 | 4185 | ||
| 4183 | NSTRACE_WHEN (NSTRACE_GROUP_EVENTS, "ns_select"); | 4186 | NSTRACE_WHEN (NSTRACE_GROUP_EVENTS, "ns_select"); |
| 4184 | 4187 | ||
| 4188 | if (apploopnr > 0) | ||
| 4189 | return -1; /* Already within event loop. */ | ||
| 4190 | |||
| 4185 | #ifdef HAVE_NATIVE_FS | 4191 | #ifdef HAVE_NATIVE_FS |
| 4186 | check_native_fs (); | 4192 | check_native_fs (); |
| 4187 | #endif | 4193 | #endif |