summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitry Gutov <dgutov@yandex.ru>2021-01-23 02:53:12 +0200
committerDmitry Gutov <dgutov@yandex.ru>2021-01-24 03:25:52 +0200
commit0399cc2ab5cc64129d7e9030db7db76689e3a095 (patch)
treed5d9565fa89c3417f8e9385955093c7bce47ed3c
parent3443a1c698790fca0481178f08dcb45cca576a30 (diff)
downloademacs-0399cc2ab5cc64129d7e9030db7db76689e3a095.tar.gz
Erase the buffer only after fetching the new contents
* lisp/progmodes/xref.el (xref-revert-buffer): Erase the buffer only after fetching the new contents (bug#46042). (cherry picked from commit 5821dee0949b2913c07970d6e4b8bb8e8a35f036)
-rw-r--r--lisp/progmodes/xref.el6
1 files changed, 3 insertions, 3 deletions
diff --git a/lisp/progmodes/xref.el b/lisp/progmodes/xref.el
index e55d2958617..7f5e76c7409 100644
--- a/lisp/progmodes/xref.el
+++ b/lisp/progmodes/xref.el
@@ -876,10 +876,10 @@ Return an alist of the form ((FILENAME . (XREF ...)) ...)."
(let ((inhibit-read-only t)
(buffer-undo-list t))
(save-excursion
- (erase-buffer)
(condition-case err
- (xref--insert-xrefs
- (xref--analyze (funcall xref--fetcher)))
+ (let ((alist (xref--analyze (funcall xref--fetcher))))
+ (erase-buffer)
+ (xref--insert-xrefs alist))
(user-error
(insert
(propertize