[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Killing a frame sometimes kills emacs
From: |
Tassilo Horn |
Subject: |
Re: Killing a frame sometimes kills emacs |
Date: |
Thu, 01 Sep 2011 12:42:38 +0200 |
User-agent: |
Gnus/5.110018 (No Gnus v0.18) Emacs/24.0.50 (gnu/linux) |
Eli Zaretskii <address@hidden> writes:
>> It turned out to be a crash, not something calling Fkill_emacs. Here's
>> the backtrace:
>
> What about the Lisp backtrace?
That would have been xbacktrace, right? Next time...
> And since this is an optimized build, the backtrace is almost useless
> anyway. Can you try reproducing this in an unoptimized build?
That emacs was compiled with
CFLAGS="-mtune=native -O1 -pipe -g -ggdb"
and I'll try with -O0 the next time.
>> #7 0x00000000004e157c in xg_display_close (dpy=0x6ca0020) at gtkutil.c:182
>> gdpy = 0xd682e0
>> #8 0x00000000004afc49 in x_delete_terminal (terminal=<optimized out>)
>> at xterm.c:10607
>> dpyinfo = 0x698d3e0
>> #9 0x00000000004a40f2 in Fdelete_terminal (terminal=107998581,
>> force=<optimized out>) at terminal.c:345
>> t = 0x66fed70
>> #10 0x00000000004235cc in delete_frame (frame=99991829, force=<optimized
>> out>)
>> at frame.c:1379
>> tmp = <optimized out>
>> terminal = <optimized out>
>> f = 0x5f5c110
>> sf = 0x121b7e0
>> kb = 0x0
>> minibuffer_selected = 0
>> tooltip_frame = 0
>> #11 0x000000000042382a in Fdelete_frame (frame=<optimized out>,
>> force=<optimized out>) at frame.c:1516
>
> This part does look as if Emacs was going to close the X display where
> the frame was displayed. Were all other frames in that session on
> other displays?
No, there was exactly one single frame on the current display, and no
TTY frames. Then I clicked some link to a txt file in the chromium
browser, which fired up "emacsclient -c file.txt". So then I had
exactly 2 X11 frames. Then I clicked the X knob of the frame brought up
by the client, and that made emacs crash.
> If not, how come Emacs is about to delete the terminal? Here's the
> relevant code:
>
> if (terminal->reference_count == 0)
> {
> Lisp_Object tmp;
> XSETTERMINAL (tmp, terminal);
>
> kb = NULL;
> Fdelete_terminal (tmp, NILP (force) ? Qt : force);
> }
>
> Can you look at the value of terminal->reference_count?
In an unoptimized build, that should be in the backtrace, right?
Bye,
Tassilo
- Re: Killing a frame sometimes kills emacs, Tassilo Horn, 2011/09/01
- Re: Killing a frame sometimes kills emacs, Andreas Schwab, 2011/09/01
- Re: Killing a frame sometimes kills emacs, Tassilo Horn, 2011/09/01
- Re: Killing a frame sometimes kills emacs, Jan D., 2011/09/01
- Re: Killing a frame sometimes kills emacs, Tassilo Horn, 2011/09/01
- Re: Killing a frame sometimes kills emacs, Eli Zaretskii, 2011/09/01
- Re: Killing a frame sometimes kills emacs, Ken Raeburn, 2011/09/01
- Re: Killing a frame sometimes kills emacs, Andreas Schwab, 2011/09/02