branch: externals/vlf
commit 2dba8380156dbaec82985fce76ed549489c1dfc6
Author: Andrey Kotlarski <[email protected]>
Commit: Andrey Kotlarski <[email protected]>
In case original VLF buffer has been killed, try to find existing VLF
buffer for the same file when visiting occur results.
---
vlf.el | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)
diff --git a/vlf.el b/vlf.el
index 84049d7..ea2248a 100644
--- a/vlf.el
+++ b/vlf.el
@@ -696,7 +696,13 @@ EVENT may hold details of the invocation."
pos-relative)))
(or (buffer-live-p buffer)
(let ((occur-buffer (current-buffer)))
- (setq buffer (vlf file))
+ (or (catch 'found
+ (dolist (buf (buffer-list))
+ (set-buffer buf)
+ (and vlf-mode (equal file buffer-file-name)
+ (setq buffer buf)
+ (throw 'found t))))
+ (setq buffer (vlf file)))
(switch-to-buffer occur-buffer)))
(pop-to-buffer buffer)
(vlf-move-to-chunk chunk-start chunk-end)
@@ -708,7 +714,7 @@ Prematurely ending indexing will still show what's found so
far."
(interactive (list (read-regexp "List lines matching regexp"
(if regexp-history
(car regexp-history)))))
- (if (buffer-modified-p) ;use temporary buffer not to interfere with
modifications
+ (if (buffer-modified-p) ;use temporary buffer not to interfere with
modifications
(let ((vlf-buffer (current-buffer))
(file buffer-file-name)
(batch-size vlf-batch-size))