[Top][All Lists]

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

Re: run_window_configuration_change_hook

From: Stefan Monnier
Subject: Re: run_window_configuration_change_hook
Date: Tue, 19 Apr 2011 10:45:00 -0300
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux)

> As stated before the reason is that run_window_configuration_change_hook
> has this code

>   if (SELECTED_FRAME () != f)
>     {
>       record_unwind_protect (select_frame_norecord, Fselected_frame ());
>       Fselect_frame (frame, Qt);
>     }

>   /* Use the right buffer.  Matters when running the local hooks.  */
>   if (current_buffer != XBUFFER (Fwindow_buffer (Qnil)))
>     {
>       record_unwind_protect (Fset_buffer, Fcurrent_buffer ());
>       Fset_buffer (Fwindow_buffer (Qnil));
>     }

> which implies to first restore the current buffer and afterwards the
> selected frame which can make another buffer current.

Indeed, that sounds wrong.

> Inverting the order of the two clauses resolves the problem for me.
> Since I hardly ever use more than one frame, I'm not 100% sure whether
> reverting the clauses can break existing code.  Comments welcome.

I think swapping the two is the right thing to do, yes.


reply via email to

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