Mercurial > emacs
comparison src/buffer.c @ 77176:421b3f5480da
(Fkill_buffer): gcpro BUF during kill_buffer_processes
and check that buffer is still alive upon return.
| author | Kim F. Storm <storm@cua.dk> |
|---|---|
| date | Fri, 13 Apr 2007 12:52:00 +0000 |
| parents | 6ef15c3befe4 |
| children | f49a56c237e0 dc002877ce12 e6fdae9180d4 |
comparison
equal
deleted
inserted
replaced
| 77175:b8f03c38b27a | 77176:421b3f5480da |
|---|---|
| 1456 #ifdef CLASH_DETECTION | 1456 #ifdef CLASH_DETECTION |
| 1457 /* Unlock this buffer's file, if it is locked. */ | 1457 /* Unlock this buffer's file, if it is locked. */ |
| 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; |
| 1465 Vinhibit_quit = Qt; | 1474 Vinhibit_quit = Qt; |
| 1466 replace_buffer_in_all_windows (buf); | 1475 replace_buffer_in_all_windows (buf); |
