Subject: Re: bug#74361: [PATCH] New option xref-navigation-display-window-action

From: Dmitry Gutov <[email-masked]>
Date: Mon, 25 Nov 2024 03:58:05 +0200

On 21/11/2024 09:34, Juri Linkov wrote:
>>> PS: after testing I noticed that in your patch
>>> nil needs to be added as a placeholder for empty action:
>>>                     `((xref--display-buffer-in-window)
>>>                       (category . xref)
>>>                       (window . ,xref--original-window)))
>>>                    (t
>>> -                 '((category . xref))))))
>>> +                 '(nil (category . xref))))))
>> Did you trigger some error with the original patch? LGTM, but I'm not
>> seeing a difference in behavior.
> While using your patch I got this error caused by missing nil:
> 
> Debugger entered--Lisp error: (wrong-type-argument listp xref)
>    append(nil nil nil (category . xref) nil nil ...)
>    display-buffer(#<buffer xref.el> ((category . xref)))
>    xref--show-pos-in-buf(...)
>    xref--show-location(...)
>    command-execute(xref-goto-xref)
> 
> This is not reproducible in `emacs -Q`.  If you want,
> I could try to find minimal customization.
> But the main thing is that with my customization
> (window-live-p xref--original-window) is nil,
> so 'xref--show-pos-in-buf' uses the last branch of 'cond'.

No it's okay - I guess if this makes some customizations easier (not 
erroring out), that's also a win.