emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: master 05705454d5: Don't transfer window attributes trying to find t


From: martin rudalics
Subject: Re: master 05705454d5: Don't transfer window attributes trying to find the XM drag window
Date: Mon, 19 Sep 2022 18:14:30 +0200

> I'm thinking of the place where keyboard.c calls handle-focus-in, namely
> here:
...
>        call4 (Qcommand_execute, tem, Qnil, Fvector (1, &last_input_event), Qt); 
<===

What would you want to do here?  Bow out if the first element is a dead
frame or window?  That still doesn't protect us from having two
functions on such a hook where the one running first deletes the frame.

So while I think that your suggestion probably won't harm, it might
still not catch us all use cases.  We could invent things like
'run-frame-hook-with-args' that checks whether the frame is still live
before calling the next function on the hook.  But ultimately my first
proposal to have 'x-dnd-after-move-frame' check whether the frame is
live might still be the safest solution.  Plus adding some text that all
functions on any of these hooks should check whether their frame,
window, ... argument is live.  In particular when they are installed by
default as 'x-dnd-after-move-frame'.

Incidentally, the problem I see seems to show up because I'm using a
stand-alone minibuffer frame and when that is made in
'frame-notice-user-settings', master kills the initial frame.  I haven't
tried to find out who moves that initial frame before that though.

martin



reply via email to

[Prev in Thread] Current Thread [Next in Thread]