diff options
| author | Leo Liu | 2013-03-24 14:42:25 +0800 |
|---|---|---|
| committer | Leo Liu | 2013-03-24 14:42:25 +0800 |
| commit | 7b0e2f853fcd88c58715fd159923d50dfdeb9cba (patch) | |
| tree | 43c47e8af99b49d98f2fd1443a8641c37a225908 /lisp/nxml | |
| parent | 2bf7d27acd741bf870d6ca0c74dbed7b7260b5ad (diff) | |
| download | emacs-7b0e2f853fcd88c58715fd159923d50dfdeb9cba.tar.gz emacs-7b0e2f853fcd88c58715fd159923d50dfdeb9cba.zip | |
* lisp/files.el (kill-buffer-hook): Doc fix.
* lisp/emacs-lisp/edebug.el (edebug-mode): Make sure edebug-kill-buffer
is the last entry in kill-buffer-hook.
* lisp/nxml/rng-valid.el (rng-validate-while-idle)
(rng-validate-quick-while-idle): Guard against deleted buffer.
Fixes: debbugs:13999
Diffstat (limited to 'lisp/nxml')
| -rw-r--r-- | lisp/nxml/rng-valid.el | 34 |
1 files changed, 18 insertions, 16 deletions
diff --git a/lisp/nxml/rng-valid.el b/lisp/nxml/rng-valid.el index de18c581421..e1140980813 100644 --- a/lisp/nxml/rng-valid.el +++ b/lisp/nxml/rng-valid.el | |||
| @@ -433,24 +433,26 @@ The schema is set like `rng-auto-set-schema'." | |||
| 433 | ;; validation process down. | 433 | ;; validation process down. |
| 434 | 434 | ||
| 435 | (defun rng-validate-while-idle (buffer) | 435 | (defun rng-validate-while-idle (buffer) |
| 436 | (with-current-buffer buffer | 436 | (when (buffer-live-p buffer) ; bug#13999 |
| 437 | (if rng-validate-mode | 437 | (with-current-buffer buffer |
| 438 | (if (let ((rng-validate-display-point (point)) | 438 | (if rng-validate-mode |
| 439 | (rng-validate-display-modified-p (buffer-modified-p))) | 439 | (if (let ((rng-validate-display-point (point)) |
| 440 | (rng-do-some-validation 'rng-validate-while-idle-continue-p)) | 440 | (rng-validate-display-modified-p (buffer-modified-p))) |
| 441 | (force-mode-line-update) | 441 | (rng-do-some-validation 'rng-validate-while-idle-continue-p)) |
| 442 | (rng-validate-done)) | 442 | (force-mode-line-update) |
| 443 | ;; must have done kill-all-local-variables | 443 | (rng-validate-done)) |
| 444 | (rng-kill-timers)))) | 444 | ;; must have done kill-all-local-variables |
| 445 | (rng-kill-timers))))) | ||
| 445 | 446 | ||
| 446 | (defun rng-validate-quick-while-idle (buffer) | 447 | (defun rng-validate-quick-while-idle (buffer) |
| 447 | (with-current-buffer buffer | 448 | (when (buffer-live-p buffer) ; bug#13999 |
| 448 | (if rng-validate-mode | 449 | (with-current-buffer buffer |
| 449 | (if (rng-do-some-validation) | 450 | (if rng-validate-mode |
| 450 | (force-mode-line-update) | 451 | (if (rng-do-some-validation) |
| 451 | (rng-validate-done)) | 452 | (force-mode-line-update) |
| 452 | ;; must have done kill-all-local-variables | 453 | (rng-validate-done)) |
| 453 | (rng-kill-timers)))) | 454 | ;; must have done kill-all-local-variables |
| 455 | (rng-kill-timers))))) | ||
| 454 | 456 | ||
| 455 | (defun rng-validate-done () | 457 | (defun rng-validate-done () |
| 456 | (when (or (not (current-message)) | 458 | (when (or (not (current-message)) |