Subject: Re: bug#11984: 24.1; segfault while deleting a window

From: martin rudalics <[email-masked]>
Date: Wed, 25 Jul 2012 09:15:03 +0200

> If you built Emacs with the change, and tooltips work for you,

How do I test it?  Is evaluating

(x-show-tip "???")

enough?

 > then I
 > see no reason why they won't for me.

Because tooltip frames appear fragile.  x_create_tip_frame uses

   Fset_window_buffer (FRAME_ROOT_WINDOW (f), buffer, Qnil);

while make_frame has

     /* Use set_window_buffer, not Fset_window_buffer, and don't let
        hooks be run by it.  The reason is that the whole frame/window
        arrangement is not yet fully initialized at this point.  Windows
        don't have the right size, glyph matrices aren't initialized
        etc.  Running Lisp functions at this point surely ends in a
        SEGV.  */
     set_window_buffer (root_window, buf, 0, 0);

Wouldn't the fact that the frame has not been set up completely when
assigning a buffer to its root window suggest that Fset_window_buffer
should not be used here either?

martin