Mercurial > emacs
changeset 54833:7b278dbd537f
(compile-goto-error): Select the buffer/window corresponding to the event.
author | Stefan Monnier <monnier@iro.umontreal.ca> |
---|---|
date | Mon, 12 Apr 2004 23:02:48 +0000 |
parents | 8a894d554fb1 |
children | 9533e29b87e8 |
files | lisp/progmodes/compile.el |
diffstat | 1 files changed, 8 insertions(+), 6 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/progmodes/compile.el Mon Apr 12 20:50:16 2004 +0000 +++ b/lisp/progmodes/compile.el Mon Apr 12 23:02:48 2004 +0000 @@ -1370,12 +1370,14 @@ (interactive (list last-input-event)) (or (compilation-buffer-p (current-buffer)) (error "Not in a compilation buffer")) - (let ((pos (if event (posn-point (event-end event)) (point)))) - (if (get-text-property (point) 'directory) - (dired-other-window (car (get-text-property pos 'directory))) - (push-mark) - (setq compilation-current-error pos) - (next-error 0)))) + (let* ((loc (event-end event)) + (pos (posn-point loc))) + (with-selected-window (posn-window loc) + (if (get-text-property pos 'directory) + (dired-other-window (car (get-text-property pos 'directory))) + (push-mark) + (setq compilation-current-error pos) + (next-error 0))))) ;; Return a compilation buffer. ;; If the current buffer is a compilation buffer, return it.