diff --git a/modules/tools/lookup/autoload/lookup.el b/modules/tools/lookup/autoload/lookup.el index e8222bed6..3a727c20a 100644 --- a/modules/tools/lookup/autoload/lookup.el +++ b/modules/tools/lookup/autoload/lookup.el @@ -188,15 +188,16 @@ This can be passed nil as its second argument to unset handlers for MODES. e.g. (xref-find-backend) identifier))) (when xrefs - (let ((marker-ring (ring-copy xref--marker-ring))) + (let* ((jumped nil) + (xref-after-jump-hook + (cons (lambda () (setq jumped t)) + xref-after-jump-hook))) (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))))))) + jumped))))) (defun +lookup-dictionary-definition-backend-fn (identifier) "Look up dictionary definition for IDENTIFIER."