unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Stefan Monnier <monnier@iro.umontreal.ca>
To: Eli Zaretskii <eliz@gnu.org>
Cc: 7728@debbugs.gnu.org
Subject: bug#7728: 24.0.50; GDB backtrace from abort
Date: Sat, 25 Dec 2010 15:35:31 -0500	[thread overview]
Message-ID: <jwvaajtppdd.fsf-monnier+emacs@gnu.org> (raw)
In-Reply-To: <83y67echvm.fsf@gnu.org> (Eli Zaretskii's message of "Sat, 25 Dec 2010 11:38:05 +0200")

>> Program received signal SIGTRAP, Trace/breakpoint trap.
>> [Switching to Thread 3684.0x1210]
>> 0x7c90120f in ntdll!DbgUiConnectToDbg () from C:\WINDOWS\system32\ntdll.dll
>> (gdb) bt
>> #0  0x7c90120f in ntdll!DbgUiConnectToDbg () from C:\WINDOWS\system32\ntdll.dll
>> #1  0x01309b9f in w32_abort () at w32fns.c:7312
>> #2  0x0104a0af in die (msg=0x159401c "assertion failed:
>> WINDOWP(selected_window)",
>> file=0x1593ee0 "xdisp.c", line=1156) at alloc.c:6129
>> #3  0x0116327a in window_text_bottom_y (w=0x58b2c00) at xdisp.c:1156

> The abort happens in this source line in window_text_bottom_y:

>     height -= CURRENT_MODE_LINE_HEIGHT (w);

> The macro CURRENT_MODE_LINE_HEIGHT accesses selected_window:

>   #define CURRENT_MODE_LINE_HEIGHT(W)				\
>        (current_mode_line_height >= 0				\
> 	? current_mode_line_height				\
> 	: (MATRIX_MODE_LINE_HEIGHT ((W)->current_matrix)	\
> 	   ? MATRIX_MODE_LINE_HEIGHT ((W)->current_matrix)	\
> 	   : estimate_mode_line_height (XFRAME ((W)->frame),	\
> 					CURRENT_MODE_LINE_FACE_ID (W))))

>   #define CURRENT_MODE_LINE_FACE_ID(W)		\
> 	  (CURRENT_MODE_LINE_FACE_ID_3((W), XWINDOW (selected_window), (W)))

> and XWINDOW tries to assert (under ENABLE_CHECKING) that its argument
> is indeed a window.

> So it looks like somehow we get into selected_window a value that is
> not a window.  I'm guessing it was nil in this case.

If selected_window is nil because of Fset_window_configuration, then it
is presumably nil for all the intervening and some of the subsequent
code, and I suspect fixing it earlier in the call chain will be
preferable: e.g., it doesn't make sense to "display_and_set_cursor" in
the "selected_window = nil" case.


        Stefan





  parent reply	other threads:[~2010-12-25 20:35 UTC|newest]

Thread overview: 50+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-12-24 16:55 bug#7728: 24.0.50; GDB backtrace from abort Drew Adams
2010-12-25  9:38 ` Eli Zaretskii
2010-12-25 10:44   ` Andreas Schwab
2010-12-25 11:12     ` Eli Zaretskii
2010-12-25 20:35   ` Stefan Monnier [this message]
2011-01-01 18:02     ` Eli Zaretskii
2011-01-09 21:18       ` Eli Zaretskii
2011-01-10 23:32         ` Drew Adams
2011-01-11 20:55       ` Stefan Monnier
2011-01-11 21:14         ` Eli Zaretskii
2011-01-11 21:44           ` Drew Adams
2011-01-12  4:11             ` Eli Zaretskii
2011-01-12  4:59               ` Drew Adams
2011-01-12 11:03                 ` Eli Zaretskii
2011-01-12 18:36                   ` Drew Adams
2011-01-12 19:52                   ` Drew Adams
2011-01-12 21:30                     ` Drew Adams
2011-01-12  7:54         ` martin rudalics
2011-01-12 15:05           ` Drew Adams
2011-01-12 15:14           ` Stefan Monnier
2011-01-12 15:59             ` martin rudalics
2011-01-12 16:22             ` Eli Zaretskii
2011-01-12 17:42               ` martin rudalics
2011-01-12 17:48                 ` Eli Zaretskii
2011-01-12 18:35                   ` martin rudalics
2011-01-12 18:36                   ` Drew Adams
2011-01-15  2:59                 ` Chong Yidong
2011-01-15 20:05                   ` martin rudalics
2011-01-13  2:53               ` Stefan Monnier
2011-01-13  7:07                 ` Drew Adams
2011-01-13 17:02                   ` Stefan Monnier
2011-01-13 17:57                     ` Drew Adams
2011-01-13 21:24                       ` Stefan Monnier
2011-01-13 22:06                         ` Drew Adams
2011-01-14  0:26                       ` Eli Zaretskii
2011-01-14  1:19                         ` Drew Adams
2011-01-14  2:40                           ` Eli Zaretskii
2011-01-14  6:46                             ` Drew Adams
2011-01-14  7:09                               ` Drew Adams
2011-01-14 20:01                         ` Sean Sieger
2011-01-14 21:06                           ` Drew Adams
2011-01-14 21:46                             ` Sean Sieger
2011-01-14 22:51                               ` Eli Zaretskii
2011-01-14 23:56                                 ` Sean Sieger
2011-01-14  2:25                       ` Stefan Monnier
2011-01-14  4:25                         ` Drew Adams
2011-01-14  8:26                     ` martin rudalics
2011-01-14  8:58                       ` Drew Adams
2011-01-14 15:30                         ` Stefan Monnier
2011-01-16 20:44                           ` Drew Adams

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

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=jwvaajtppdd.fsf-monnier+emacs@gnu.org \
    --to=monnier@iro.umontreal.ca \
    --cc=7728@debbugs.gnu.org \
    --cc=eliz@gnu.org \
    /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 public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).