diff options
| author | Paul Eggert | 2017-02-01 15:18:44 -0800 |
|---|---|---|
| committer | Paul Eggert | 2017-02-01 15:23:19 -0800 |
| commit | b4c9f9120d8b0da0593f2fbde69b40374f56451d (patch) | |
| tree | 8f40be80730a41e83e58e0632ff539ac752eb453 /src/callproc.c | |
| parent | b01ac672be1277833964d2d53f6dd26560c70343 (diff) | |
| download | emacs-b4c9f9120d8b0da0593f2fbde69b40374f56451d.tar.gz emacs-b4c9f9120d8b0da0593f2fbde69b40374f56451d.zip | |
Fix quitting bug when buffers are frozen
Problem noted by Eli Zaretskii in:
http://lists.gnu.org/archive/html/emacs-devel/2017-01/msg00721.html
This patch also fixes some other issues in that report.
* src/lisp.h (incr_rarely_quit): Remove.
All callers changed to use rarely_quit directly.
* src/search.c (freeze_buffer_relocation)
(thaw_buffer_relocation): New functions.
(looking_at_1, fast_looking_at, search_buffer):
Use them to fix bug when quitting when buffers are frozen.
* src/sysdep.c (emacs_intr_read): Rename from emacs_nointr_read.
All uses changed.
Diffstat (limited to 'src/callproc.c')
| -rw-r--r-- | src/callproc.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/callproc.c b/src/callproc.c index 710174c46b0..84324c48dcf 100644 --- a/src/callproc.c +++ b/src/callproc.c | |||
| @@ -198,7 +198,10 @@ call_process_cleanup (Lisp_Object buffer) | |||
| 198 | { | 198 | { |
| 199 | kill (-synch_process_pid, SIGINT); | 199 | kill (-synch_process_pid, SIGINT); |
| 200 | message1 ("Waiting for process to die...(type C-g again to kill it instantly)"); | 200 | message1 ("Waiting for process to die...(type C-g again to kill it instantly)"); |
| 201 | |||
| 202 | /* This will quit on C-g. */ | ||
| 201 | wait_for_termination (synch_process_pid, 0, 1); | 203 | wait_for_termination (synch_process_pid, 0, 1); |
| 204 | |||
| 202 | synch_process_pid = 0; | 205 | synch_process_pid = 0; |
| 203 | message1 ("Waiting for process to die...done"); | 206 | message1 ("Waiting for process to die...done"); |
| 204 | } | 207 | } |