diff options
| author | Kim F. Storm | 2007-04-13 12:52:00 +0000 |
|---|---|---|
| committer | Kim F. Storm | 2007-04-13 12:52:00 +0000 |
| commit | 49da74e69827880a3091fd68c55b7bb3a6326dfa (patch) | |
| tree | b03fcbef756f93da5ba727e10f61afeabe5ef872 /src | |
| parent | 425875780816915e0a8b78bbe45abc55ef5a4bc6 (diff) | |
| download | emacs-49da74e69827880a3091fd68c55b7bb3a6326dfa.tar.gz emacs-49da74e69827880a3091fd68c55b7bb3a6326dfa.zip | |
(Fkill_buffer): gcpro BUF during kill_buffer_processes
and check that buffer is still alive upon return.
Diffstat (limited to 'src')
| -rw-r--r-- | src/buffer.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/buffer.c b/src/buffer.c index 3ad92331e01..ba23cc6ae33 100644 --- a/src/buffer.c +++ b/src/buffer.c | |||
| @@ -1458,7 +1458,16 @@ with SIGHUP. */) | |||
| 1458 | unlock_buffer (b); | 1458 | unlock_buffer (b); |
| 1459 | #endif /* CLASH_DETECTION */ | 1459 | #endif /* CLASH_DETECTION */ |
| 1460 | 1460 | ||
| 1461 | GCPRO1 (buf); | ||
| 1461 | kill_buffer_processes (buf); | 1462 | kill_buffer_processes (buf); |
| 1463 | UNGCPRO; | ||
| 1464 | |||
| 1465 | /* Killing buffer processes may run sentinels which may | ||
| 1466 | have called kill-buffer. */ | ||
| 1467 | |||
| 1468 | if (NILP (b->name)) | ||
| 1469 | return Qnil; | ||
| 1470 | |||
| 1462 | clear_charpos_cache (b); | 1471 | clear_charpos_cache (b); |
| 1463 | 1472 | ||
| 1464 | tem = Vinhibit_quit; | 1473 | tem = Vinhibit_quit; |