GNU bug report logs - #19511
25.0.50; Failed assertions in redisplay() code. (dispnew.c:1405; xdisp.c:17524)

Previous Next

Package: emacs;

Reported by: Andreas Matthias <andreas.matthias <at> gmail.com>

Date: Sun, 4 Jan 2015 23:21:02 UTC

Severity: normal

Found in version 25.0.50

Done: Eli Zaretskii <eliz <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Andreas Matthias <andreas.matthias <at> gmail.com>
To: 19511 <at> debbugs.gnu.org
Subject: bug#19511: 25.0.50; Failed assertions in redisplay() code. (dispnew.c:1405; xdisp.c:17524)
Date: Sun, 04 Jan 2015 23:27:33 +0100
[Message part 1 (text/plain, inline)]
With the attached example code I can trigger two different assertions
somewhere down the line of redisplay():

1) dispnew.c:1405: Emacs fatal error: assertion failed: row >= 0 && row < matrix->nrows

2) xdisp.c:17524: Emacs fatal error: assertion failed: row->enabled_p


Unfortunately I could not further isolate the elisp code which eventually
causes these assertions to fail. The following packages from MELPA are
involved: lua-mode, polymode. (version numbers see example code)

This is the example code triggering the mentioned assertions.

[pm-01.el (application/emacs-lisp, attachment)]
[pm-01.nw (test/plain, attachment)]
[Message part 4 (text/plain, inline)]
Note: With a recently checked out Emacs 25.0.50 I can trigger both assertions
as described below. Concerning Emacs 24.3.1 I can trigger only the first
assertion but not the second one.

Kind regards,
Andreas


1)  The first assertion is triggered by:

      * run emacs -Q -l pm-01.el
      * press "delete" twice

    And this is the backtrace:

#0  0x00007ffff37d120b in raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/pt-raise.c:37
#1  0x000000000057f286 in terminate_due_to_signal (sig=6, backtrace_limit=2147483647)
    at emacs.c:386
#2  0x000000000060ca9d in die (msg=0x6f2768 "row >= 0 && row < matrix->nrows", 
    file=0x6f2540 "dispnew.c", line=1405) at alloc.c:7108
#3  0x0000000000418d3e in matrix_row (matrix=0xf84b40, row=-1) at dispnew.c:1405
#4  0x0000000000479d85 in try_window_id (w=0x137c530) at xdisp.c:18436
#5  0x000000000046ee38 in redisplay_window (window=..., just_this_one_p=true)
    at xdisp.c:16396
#6  0x00000000004660e2 in redisplay_window_1 (window=...) at xdisp.c:14310
#7  0x000000000062cade in internal_condition_case_1 (bfun=0x4660a0 <redisplay_window_1>, 
    arg=..., handlers=..., hfun=0x466024 <redisplay_window_error>) at eval.c:1369
#8  0x000000000046529f in redisplay_internal () at xdisp.c:13953
#9  0x000000000046287a in redisplay () at xdisp.c:13158
#10 0x0000000000586ef8 in read_char (commandflag=1, map=..., prev_event=..., 
    used_mouse_menu=0x7fffffffd865, end_time=0x0) at keyboard.c:2643
#11 0x0000000000596ced in read_key_sequence (keybuf=0x7fffffffda90, bufsize=30, prompt=..., 
    dont_downcase_last=false, can_return_switch_frame=true, fix_current_buffer=true, 
    prevent_redisplay=false) at keyboard.c:9257
#12 0x0000000000583e16 in command_loop_1 () at keyboard.c:1510
#13 0x000000000062c96d in internal_condition_case (bfun=0x583a3f <command_loop_1>, 
    handlers=..., hfun=0x5831af <cmd_error>) at eval.c:1345
#14 0x00000000005836dd in command_loop_2 (ignore=...) at keyboard.c:1245
#15 0x000000000062bddb in internal_catch (tag=..., func=0x5836ba <command_loop_2>, arg=...)
    at eval.c:1106
#16 0x0000000000583691 in command_loop () at keyboard.c:1224
#17 0x0000000000582cdb in recursive_edit_1 () at keyboard.c:834
#18 0x0000000000582eab in Frecursive_edit () at keyboard.c:905
#19 0x0000000000580c10 in main (argc=4, argv=0x7fffffffde58) at emacs.c:1619


2) The second assertion is triggered by:

      * run emacs -Q -l pm-01.el
      * press "a" twice

    And this is the backtrace:

#0  0x00007ffff37d120b in raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/pt-raise.c:37
#1  0x000000000057f286 in terminate_due_to_signal (sig=6, backtrace_limit=2147483647)
    at emacs.c:386
#2  0x000000000060ca9d in die (msg=0x6f92ee "row->enabled_p", file=0x6f6640 "xdisp.c", 
    line=17524) at alloc.c:7108
#3  0x00000000004772c9 in find_last_row_displaying_text (matrix=0x15f57d0, 
    it=0x7fffffff8690, start=0x1d8c720) at xdisp.c:17524
#4  0x0000000000479fce in try_window_id (w=0x137c530) at xdisp.c:18485
#5  0x000000000046ee38 in redisplay_window (window=..., just_this_one_p=true)
    at xdisp.c:16396
#6  0x00000000004660e2 in redisplay_window_1 (window=...) at xdisp.c:14310
#7  0x000000000062cade in internal_condition_case_1 (bfun=0x4660a0 <redisplay_window_1>, 
    arg=..., handlers=..., hfun=0x466024 <redisplay_window_error>) at eval.c:1369
#8  0x000000000046529f in redisplay_internal () at xdisp.c:13953
#9  0x000000000046287a in redisplay () at xdisp.c:13158
#10 0x0000000000586ef8 in read_char (commandflag=1, map=..., prev_event=..., 
    used_mouse_menu=0x7fffffffd865, end_time=0x0) at keyboard.c:2643
#11 0x0000000000596ced in read_key_sequence (keybuf=0x7fffffffda90, bufsize=30, prompt=..., 
    dont_downcase_last=false, can_return_switch_frame=true, fix_current_buffer=true, 
    prevent_redisplay=false) at keyboard.c:9257
#12 0x0000000000583e16 in command_loop_1 () at keyboard.c:1510
#13 0x000000000062c96d in internal_condition_case (bfun=0x583a3f <command_loop_1>, 
    handlers=..., hfun=0x5831af <cmd_error>) at eval.c:1345
#14 0x00000000005836dd in command_loop_2 (ignore=...) at keyboard.c:1245
#15 0x000000000062bddb in internal_catch (tag=..., func=0x5836ba <command_loop_2>, arg=...)
    at eval.c:1106
#16 0x0000000000583691 in command_loop () at keyboard.c:1224
#17 0x0000000000582cdb in recursive_edit_1 () at keyboard.c:834
#18 0x0000000000582eab in Frecursive_edit () at keyboard.c:905
#19 0x0000000000580c10 in main (argc=4, argv=0x7fffffffde58) at emacs.c:1619



In GNU Emacs 25.0.50.1 (x86_64-unknown-linux-gnu, GTK+ Version 3.10.8)
 of 2015-01-04 on winky
Repository revision: d7e858bcc6f353ea3e955ca2a91d7b5c33bb6611
Windowing system distributor `The X.Org Foundation', version 11.0.11501000
System Description:	Ubuntu 14.04.1 LTS

Configured using:
 `configure --prefix=/home/andreas/local/emacs --enable-checking=all
 --enable-check-lisp-object-type 'CFLAGS=-g3 -O0''

Configured features:
XPM JPEG TIFF GIF PNG SOUND DBUS GSETTINGS NOTIFY GNUTLS LIBXML2
FREETYPE XFT ZLIB

Important settings:
  value of $LC_COLLATE: en_US.UTF-8
  value of $LC_CTYPE: en_US.UTF-8
  value of $LC_MESSAGES: en_US.UTF-8
  value of $LANG: en_US.UTF-8
  value of $XMODIFIERS: @im=ibus
  locale-coding-system: utf-8-unix

Major mode: Lisp Interaction

Minor modes in effect:
  tooltip-mode: t
  global-eldoc-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  tool-bar-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  line-number-mode: t

Recent messages:
For information about GNU Emacs and the GNU system, type C-h C-a.

Load-path shadows:
None found.

Features:
(shadow sort gnus-util mail-extr emacsbug message dired format-spec
rfc822 mml easymenu mml-sec mm-decode mm-bodies mm-encode mail-parse
rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045
ietf-drums mm-util help-fns mail-prsvr mail-utils time-date tooltip
eldoc electric uniquify ediff-hook vc-hooks lisp-float-type mwheel x-win
x-dnd tool-bar dnd fontset image regexp-opt fringe tabulated-list
newcomment elisp-mode lisp-mode prog-mode register page menu-bar
rfn-eshadow timer select scroll-bar mouse jit-lock font-lock syntax
facemenu font-core frame cham georgian utf-8-lang misc-lang vietnamese
tibetan thai tai-viet lao korean japanese hebrew greek romanian slovak
czech european ethiopic indian cyrillic chinese case-table epa-hook
jka-cmpr-hook help simple abbrev minibuffer nadvice loaddefs button
faces cus-face macroexp files text-properties overlay sha1 md5 base64
format env code-pages mule custom widget hashtable-print-readable
backquote make-network-process dbusbind gfilenotify dynamic-setting
system-font-setting font-render-setting move-toolbar gtk x-toolkit x
multi-tty emacs)

Memory information:
((conses 16 76943 4320)
 (symbols 48 18291 1)
 (miscs 40 45 125)
 (strings 32 11760 3895)
 (string-bytes 1 323298)
 (vectors 16 10065)
 (vector-slots 8 395354 9010)
 (floats 8 72 61)
 (intervals 56 192 0)
 (buffers 976 11)
 (heap 1024 44733 1424))

This bug report was last modified 10 years and 190 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.