tools/lookup: fall through if xref backend fails

Part 1 to solution for #4739
This commit is contained in:
Henrik Lissner 2021-03-05 18:43:25 -05:00
parent 543d122643
commit 0a9172a8f2

View file

@ -188,12 +188,15 @@ This can be passed nil as its second argument to unset handlers for MODES. e.g.
(xref-find-backend)
identifier)))
(when xrefs
(funcall (or show-fn #'xref--show-defs)
(lambda () xrefs)
nil)
(if (cdr xrefs)
'deferred
t))))
(let ((marker-ring (ring-copy xref--marker-ring)))
(funcall (or show-fn #'xref--show-defs)
(lambda () xrefs)
nil)
(if (cdr xrefs)
'deferred
;; xref will modify its marker stack when it finds a result to jump to.
;; Use that to determine success.
(not (equal xref--marker-ring marker-ring)))))))
(defun +lookup-dictionary-definition-backend-fn (identifier)
"Look up dictionary definition for IDENTIFIER."