From: "Jan Djärv" <jan.h.d@swipnet.se>
To: Chong Yidong <cyd@stupidchicken.com>
Cc: 3145@emacsbugs.donarmstrong.com, Stephen Berman <stephen.berman@gmx.net>
Subject: bug#3145: 23.0.92; detaching GTK+ tool bar crashes emacs --daemon
Date: Sat, 02 May 2009 18:51:14 +0200 [thread overview]
Message-ID: <49FC7A02.5030208@swipnet.se> (raw)
In-Reply-To: <49F959F7.6030002@swipnet.se>
Sorry, no workaround is possible.
The part in Gtk+ that handles detaching uses a hidden window which it stores
in a static variable. So it get created on the first display, but is still
used on the second, but that is not a valid window anymore:
static GtkWidget *
gtk_handle_box_get_invisible (void)
{
static GtkWidget *handle_box_invisible = NULL;
if (!handle_box_invisible)
{
handle_box_invisible = gtk_invisible_new ();
gtk_widget_show (handle_box_invisible);
}
return handle_box_invisible;
}
This is another instance of the "there is just one display and it is always
open"-mindset of Gtk+.
I have filed a Gtk+ bug on this
(http://bugzilla.gnome.org/show_bug.cgi?id=581110). Not sure what we should do
about this bug though. Keep it until Gtk+ fixes/rejects the bug report or
close it?
Jan D.
>
>
> Chong Yidong skrev:
>> Stephen Berman <stephen.berman@gmx.net> wrote:
>>
>>> Carrying out the following steps reliably crashes Emacs:
>>>
>>> 1. emacs -Q --daemon
>>> 2. emacsclient -c
>>> 3. Detach the tool bar (only possible with GTK+ build).
>>> 4. Close the client frame with C-x 5 0
>>> 5. emacsclient -c
>>> 6. Detach the tool bar
>>> => SIGSEGV
>>
>> Actually, daemon mode is not needed. You can also do this:
>>
>> 1. emacs -Q -nw
>> 2. M-x make-frame-on-display RET :0.0 RET
>> 3. Detach the tool bar
>> 4. Close the client frame with C-x 5 0
>> 5. M-x make-frame-on-display RET :0.0 RET
>> 6. Detach the tool bar
>> => SIGSEGV
>>
>> Jan, could you try to debug this? It may be another manifestation of
>> the problems we've been having with GTK and closing X connections.
>
> It looks like it. The window for the detached tool bar is created and
> managed by Gtk+ and is not deleted when the display is removed it seems.
>
> I'll see if we can work around it.
>
> Jan D.
>
>
next prev parent reply other threads:[~2009-05-02 16:51 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-04-30 1:05 bug#3145: 23.0.92; detaching GTK+ tool bar crashes emacs --daemon Chong Yidong
2009-04-30 7:57 ` Jan Djärv
2009-05-02 16:51 ` Jan Djärv [this message]
2009-05-02 17:10 ` Chong Yidong
2009-05-02 23:35 ` Stephen Berman
2009-05-03 17:19 ` Jan Djärv
2009-05-03 18:24 ` Dan Nicolaescu
2009-05-03 20:25 ` Chong Yidong
2009-05-03 21:30 ` Richard M Stallman
2009-05-04 20:17 ` Jan Djärv
2009-08-04 19:25 ` Sven Joachim
2009-08-05 9:41 ` Jan Djärv
2011-09-16 20:34 ` Lars Magne Ingebrigtsen
2011-09-16 22:29 ` Jan Djärv
2016-04-10 22:40 ` Alan Third
2016-04-11 8:28 ` Stephen Berman
-- strict thread matches above, loose matches on Subject: below --
2009-04-28 14:41 Stephen Berman
2009-04-28 15:26 ` Stephen Berman
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=49FC7A02.5030208@swipnet.se \
--to=jan.h.d@swipnet.se \
--cc=3145@emacsbugs.donarmstrong.com \
--cc=cyd@stupidchicken.com \
--cc=stephen.berman@gmx.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.