(multi-isearch-search-fun): Always provide a non-nil
authorJuri Linkov <juri@jurta.org>
Mon, 30 Nov 2009 21:45:30 +0000 (21:45 +0000)
committerJuri Linkov <juri@jurta.org>
Mon, 30 Nov 2009 21:45:30 +0000 (21:45 +0000)
value `buffer' of `multi-isearch-next-buffer-current-function'.
Use `(current-buffer)' when `buffer' is nil.
(multi-isearch-next-buffer-from-list): Don't fallback to
`(current-buffer)' when `buffer' is nil.  (Bug#4947)

lisp/ChangeLog
lisp/misearch.el

index aa6ee15..dfd2a36 100644 (file)
@@ -2,6 +2,14 @@
 
        * vc-git.el (vc-git-registered): Call vc-git-root only once.
 
+2009-11-30  Juri Linkov  <juri@jurta.org>
+
+       * misearch.el (multi-isearch-search-fun): Always provide a non-nil
+       value `buffer' of `multi-isearch-next-buffer-current-function'.
+       Use `(current-buffer)' when `buffer' is nil.
+       (multi-isearch-next-buffer-from-list): Don't fallback to
+       `(current-buffer)' when `buffer' is nil.  (Bug#4947)
+
 2009-11-30  Juri Linkov  <juri@jurta.org>
 
        * misearch.el (multi-isearch-read-buffers): Move canonicalization
index 51dd351..b80aa0e 100644 (file)
@@ -158,7 +158,7 @@ Intended to be added to `isearch-mode-hook'."
                   (while (not found)
                     ;; Find the next buffer to search
                     (setq buffer (funcall multi-isearch-next-buffer-current-function
-                                          buffer nil))
+                                          (or buffer (current-buffer)) nil))
                     (with-current-buffer buffer
                       (goto-char (if isearch-forward (point-min) (point-max)))
                       (setq isearch-barrier (point) isearch-opoint (point))
@@ -222,7 +222,7 @@ set in `multi-isearch-buffers' or `multi-isearch-buffers-regexp'."
                   (reverse multi-isearch-buffer-list))))
     (if wrap
        (car buffers)
-      (cadr (member (or buffer (current-buffer)) buffers)))))
+      (cadr (member buffer buffers)))))
 
 (defun multi-isearch-read-buffers ()
   "Return a list of buffers specified interactively, one by one."