aboutsummaryrefslogtreecommitdiffstats
path: root/lisp/nxml
diff options
context:
space:
mode:
authorLeo Liu2013-03-24 14:42:25 +0800
committerLeo Liu2013-03-24 14:42:25 +0800
commit7b0e2f853fcd88c58715fd159923d50dfdeb9cba (patch)
tree43c47e8af99b49d98f2fd1443a8641c37a225908 /lisp/nxml
parent2bf7d27acd741bf870d6ca0c74dbed7b7260b5ad (diff)
downloademacs-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.el34
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))