summaryrefslogtreecommitdiff
path: root/elisp/geiser-popup.el
diff options
context:
space:
mode:
Diffstat (limited to 'elisp/geiser-popup.el')
-rw-r--r--elisp/geiser-popup.el7
1 files changed, 4 insertions, 3 deletions
diff --git a/elisp/geiser-popup.el b/elisp/geiser-popup.el
index 2f78763..ea3fc5f 100644
--- a/elisp/geiser-popup.el
+++ b/elisp/geiser-popup.el
@@ -30,9 +30,10 @@
(current-buffer))))
(defun ,pop-buff (&optional ,method)
(let ((,buffer (,get-buff)))
- (cond ((eq ,method 'buffer) (view-buffer ,buffer))
- ((eq ,method 'frame) (view-buffer-other-frame ,buffer))
- (t (view-buffer-other-window ,buffer)))))
+ (unless (eq ,buffer (current-buffer))
+ (cond ((eq ,method 'buffer) (view-buffer ,buffer))
+ ((eq ,method 'frame) (view-buffer-other-frame ,buffer))
+ (t (view-buffer-other-window ,buffer))))))
(defmacro ,with-macro (&rest body)
(let ((buff ',get-buff))
`(with-current-buffer (funcall ',buff)