]> git.eshelyaron.com Git - emacs.git/commitdiff
Erase the buffer only after fetching the new contents
authorDmitry Gutov <dgutov@yandex.ru>
Sat, 23 Jan 2021 00:53:12 +0000 (02:53 +0200)
committerDmitry Gutov <dgutov@yandex.ru>
Sun, 24 Jan 2021 01:25:52 +0000 (03:25 +0200)
* lisp/progmodes/xref.el (xref-revert-buffer):
Erase the buffer only after fetching the new contents (bug#46042).

(cherry picked from commit 5821dee0949b2913c07970d6e4b8bb8e8a35f036)

lisp/progmodes/xref.el

index e55d2958617744f26ff183add490e30aaa0d2158..7f5e76c74095179a31c068e5e8e7fa321b341f87 100644 (file)
@@ -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