Eli Zaretskii writes: >> From: Rainer M Krug >> Cc: 21428@debbugs.gnu.org, mituharu+bug-gnu-emacs-mac@math.s.chiba-u.ac.jp >> Date: Fri, 25 Sep 2015 11:34:03 +0200 >> >> OK - new crash: I updated this morning from git and recompiled. >> >> This time it is face #42 and it seems to be in the bar above the >> minibuffer (mode-line)??? The character look like mode-bar, but I can't >> see them anywhere. > > It's not a mode line: the characters come from a buffer, whereas they > come from strings. Also, the number of characters is too small for a > mode line, and the beginning doesn't resemble a mode line. > > The "vpos=1" part here: > >> | #7 0x000000010000f902 in update_window_line (w=0x1020bfbe0, >> | vpos=1, mouse_face_overwritten_p=0x7fff5fbfbdc2) at dispnew.c:3854 > > means this is the second (zero-based) screen line of some window. It > looks like a mode spec at the beginning of some Org file: > > # -*- mode: org -*- > > Does that ring any bells? Can you try recreating that window in a > live session, so we could see what face is #42? Found it - I only looked at visible tabs - not the non-visible ones. describe-face: ,---- | Face: font-lock-comment-face (sample) (customize this face) | | Documentation: | Font Lock mode face used to highlight comments. | | Defined in ‘font-lock.el’. | | Family: unspecified | Foundry: unspecified | Width: unspecified | Height: unspecified | Weight: unspecified | Slant: italic | Foreground: #8D8D84 | DistantForeground: unspecified | Background: unspecified | Underline: unspecified | Overline: unspecified | Strike-through: unspecified | Box: unspecified | Inverse: unspecified | Stipple: unspecified | Font: unspecified | Fontset: unspecified | Inherit: unspecified `---- describe-text-properties ,---- | Text content at position 17: | | | There are text properties here: | face font-lock-comment-face | font-lock-fontified t | fontified t | line-prefix "" | org-category "EnergyBalance" | wrap-prefix "" | | [back] `---- > >> | (gdb) p f->face_cache->used >> | $1 = 31 > > Hmmm, the same number 31 as in the previous crash. Interesting. I can also add the next crash. ,---- | xdisp.c:24333: Emacs fatal error: assertion failed: face != NULL | | Breakpoint 1, terminate_due_to_signal (sig=6, backtrace_limit=2147483647) at emacs.c:370 | 370 signal (sig, SIG_DFL); | (gdb) bt | #0 terminate_due_to_signal (sig=6, backtrace_limit=2147483647) at emacs.c:370 | #1 0x00000001002256eb in die (msg=0x1003b680a "face != NULL", file=0x1003b24f0 "xdisp.c", line=24333) at alloc.c:6951 | #2 0x0000000100062f17 in get_glyph_face_and_encoding (f=0x10281dc30, glyph=0x10379b980, char2b=0x7fff5fbfb440) at xdisp.c:24333 | #3 0x00000001000b581d in fill_glyph_string (s=0x7fff5fbfb460, face_id=61, start=8, end=21, overlaps=0) at xdisp.c:24558 | #4 0x000000010006d5c9 in draw_glyphs (w=0x10281cc30, x=72, row=0x1198e4200, area=TEXT_AREA, start=0, end=21, hl=DRAW_NORMAL_TEXT, overlaps=0) at xdisp.c:25225 | #5 0x000000010006cef1 in x_write_glyphs (w=0x10281cc30, updated_row=0x1198e4200, start=0x10379b800, updated_area=TEXT_AREA, len=21) at xdisp.c:27256 | #6 0x0000000100011d98 in update_text_area (w=0x10281cc30, updated_row=0x1198e4200, vpos=8) at dispnew.c:3611 | #7 0x000000010000f952 in update_window_line (w=0x10281cc30, vpos=8, mouse_face_overwritten_p=0x7fff5fbfbdf2) at dispnew.c:3854 | #8 0x00000001000078a2 in update_window (w=0x10281cc30, force_p=true) at dispnew.c:3477 | #9 0x00000001000066af in update_window_tree (w=0x10281cc30, force_p=true) at dispnew.c:3219 | #10 0x000000010000638b in update_frame (f=0x10281dc30, force_p=true, inhibit_hairy_id_p=false) at dispnew.c:3108 | #11 0x0000000100051fa9 in redisplay_internal () at xdisp.c:13815 | #12 0x0000000100053ac9 in redisplay () at xdisp.c:13059 | #13 0x0000000100184339 in read_char (commandflag=1, map=4799273539, prev_event=0, used_mouse_menu=0x7fff5fbfefb7, end_time=0x0) at keyboard.c:2465 | #14 0x000000010017f299 in read_key_sequence (keybuf=0x7fff5fbff2f0, bufsize=30, prompt=0, dont_downcase_last=false, can_return_switch_frame=true, fix_current_buffer=true, prevent_redisplay=false) at keyboard.c:9030 | #15 0x000000010017db96 in command_loop_1 () at keyboard.c:1348 | #16 0x0000000100260706 in internal_condition_case (bfun=0x10017d5a0 , handlers=17616, hfun=0x100198e10 ) at eval.c:1309 | #17 0x0000000100198d0c in command_loop_2 (ignore=0) at keyboard.c:1088 | #18 0x000000010025f7ce in internal_catch (tag=42768, func=0x100198ce0 , arg=0) at eval.c:1073 | #19 0x000000010017c8e0 in command_loop () at keyboard.c:1067 | #20 0x000000010017c722 in recursive_edit_1 () at keyboard.c:673 | #21 0x000000010017cb13 in Frecursive_edit () at keyboard.c:744 | #22 0x000000010017a6ba in main (argc=1, argv=0x7fff5fbff8f0) at emacs.c:1643 | Current language: auto; currently minimal | | Lisp Backtrace: | "redisplay_internal (C function)" (0x0) | (gdb) frame | #0 terminate_due_to_signal (sig=6, backtrace_limit=2147483647) at emacs.c:370 | 370 signal (sig, SIG_DFL); | (gdb) frame 4 | #4 0x000000010006d5c9 in draw_glyphs (w=0x10281cc30, x=72, row=0x1198e4200, area=TEXT_AREA, start=0, end=21, hl=DRAW_NORMAL_TEXT, overlaps=0) at xdisp.c:25225 | 25225 BUILD_GLYPH_STRINGS (i, end, head, tail, hl, x, last_x); | (gdb) frame 2 | #2 0x0000000100062f17 in get_glyph_face_and_encoding (f=0x10281dc30, glyph=0x10379b980, char2b=0x7fff5fbfb440) at xdisp.c:24333 | 24333 eassert (face != NULL); | (gdb) p f->face_cache->used | $1 = 38 | (gdb) pgrow | No symbol "row" in current context. | (gdb) frame 4 | #4 0x000000010006d5c9 in draw_glyphs (w=0x10281cc30, x=72, row=0x1198e4200, area=TEXT_AREA, start=0, end=21, hl=DRAW_NORMAL_TEXT, overlaps=0) at xdisp.c:25225 | 25225 BUILD_GLYPH_STRINGS (i, end, head, tail, hl, x, last_x); | (gdb) pgrow | TEXT: 21 glyphs | 0 0: CHAR[*] str=0x1e87ebb8[0] blev=0,btyp=L w=8 a+d=14+4 face=15 AVOID | 1 8: CHAR[*] str=0x1e87ebb8[1] blev=0,btyp=L w=8 a+d=14+4 face=15 AVOID | 2 16: CHAR[*] str=0x1e87ebb8[2] blev=0,btyp=L w=8 a+d=14+4 face=15 AVOID | 3 24: CHAR[*] pos=68687 blev=0,btyp=L w=8 a+d=14+4 face=15 MB | 4 32: CHAR[*] pos=68688 blev=0,btyp=L w=8 a+d=14+4 face=15 MB | 5 40: CHAR[*] pos=68689 blev=0,btyp=L w=8 a+d=14+4 face=15 MB | 6 48: CHAR[*] pos=68690 blev=0,btyp=L w=8 a+d=14+4 face=19 MB | 7 56: CHAR[ ] pos=68691 blev=0,btyp=L w=8 a+d=14+4 face=19 MB | 8 64: CHAR[l] pos=68692 blev=0,btyp=L w=8 a+d=14+4 face=61 MB | 9 72: CHAR[o] pos=68693 blev=0,btyp=L w=8 a+d=14+4 face=61 MB | 10 80: CHAR[a] pos=68694 blev=0,btyp=L w=8 a+d=14+4 face=61 MB | 11 88: CHAR[d] pos=68695 blev=0,btyp=L w=8 a+d=14+4 face=61 MB | 12 96: CHAR[M] pos=68696 blev=0,btyp=L w=8 a+d=14+4 face=61 MB | 13 104: CHAR[u] pos=68697 blev=0,btyp=L w=8 a+d=14+4 face=61 MB | 14 112: CHAR[l] pos=68698 blev=0,btyp=L w=8 a+d=14+4 face=61 MB | 15 120: CHAR[t] pos=68699 blev=0,btyp=L w=8 a+d=14+4 face=61 MB | 16 128: CHAR[i] pos=68700 blev=0,btyp=L w=8 a+d=14+4 face=61 MB | 17 136: CHAR[p] pos=68701 blev=0,btyp=L w=8 a+d=14+4 face=61 MB | 18 144: CHAR[l] pos=68702 blev=0,btyp=L w=8 a+d=14+4 face=61 MB | 19 152: CHAR[e] pos=68703 blev=0,btyp=L w=8 a+d=14+4 face=61 MB | 20 160: CHAR[ ] pos=0 blev=0,btyp=B w=8 a+d=14+4 MB | (gdb) xbacktrace | "redisplay_internal (C function)" (0x0) | (gdb) bt full | #0 terminate_due_to_signal (sig=6, backtrace_limit=2147483647) at emacs.c:370 | No locals. | #1 0x00000001002256eb in die (msg=0x1003b680a "face != NULL", file=0x1003b24f0 "xdisp.c", line=24333) at alloc.c:6951 | No locals. | #2 0x0000000100062f17 in get_glyph_face_and_encoding (f=0x10281dc30, glyph=0x10379b980, char2b=0x7fff5fbfb440) at xdisp.c:24333 | face = (struct face *) 0x0 | code = 0 | #3 0x00000001000b581d in fill_glyph_string (s=0x7fff5fbfb460, face_id=61, start=8, end=21, overlaps=0) at xdisp.c:24558 | glyph = (struct glyph *) 0x10379b980 | last = (struct glyph *) 0x10379bbf0 | voffset = 0 | glyph_not_available_p = false | #4 0x000000010006d5c9 in draw_glyphs (w=0x10281cc30, x=72, row=0x1198e4200, area=TEXT_AREA, start=0, end=21, hl=DRAW_NORMAL_TEXT, overlaps=0) at xdisp.c:25225 | face_id = 61 | char2b = (XChar2b *) 0x7fff5fbfb440 | first_glyph = (struct glyph *) 0x10379b980 | head = (struct glyph_string *) 0x7fff5fbfb6f0 | tail = (struct glyph_string *) 0x7fff5fbfb460 | s = (struct glyph_string *) 0x7fff5fbfb460 | clip_head = (struct glyph_string *) 0x0 | clip_tail = (struct glyph_string *) 0x0 | i = 8 | j = 1519979 | x_reached = 1 | last_x = 2537 | area_left = 8 | f = (struct frame *) 0x10281dc30 | sa_avail = 16286 | sa_count = 5 | sa_must_free = false | #5 0x000000010006cef1 in x_write_glyphs (w=0x10281cc30, updated_row=0x1198e4200, start=0x10379b800, updated_area=TEXT_AREA, len=21) at xdisp.c:27256 | x = 16779745 | hpos = 0 | chpos = 10 | #6 0x0000000100011d98 in update_text_area (w=0x10281cc30, updated_row=0x1198e4200, vpos=8) at dispnew.c:3611 | current_row = (struct glyph_row *) 0x119d7a200 | desired_row = (struct glyph_row *) 0x1198e4200 | rif = (struct redisplay_interface *) 0x1007d8e98 | changed_p = false | #7 0x000000010000f952 in update_window_line (w=0x10281cc30, vpos=8, mouse_face_overwritten_p=0x7fff5fbfbdf2) at dispnew.c:3854 | current_row = (struct glyph_row *) 0x119d7a200 | desired_row = (struct glyph_row *) 0x1198e4200 | rif = (struct redisplay_interface *) 0x1007d8e98 | changed_p = false | #8 0x00000001000078a2 in update_window (w=0x10281cc30, force_p=true) at dispnew.c:3477 | vpos = 8 | i = 68740 | end = (struct glyph_row *) 0x1198ebb00 | mode_line_row = (struct glyph_row *) 0x1198ebb00 | header_line_row = (struct glyph_row *) 0x1198e3a00 | changed_p = true | mouse_face_overwritten_p = false | row = (struct glyph_row *) 0x1198e4200 | yb = 1402 | n_updated = 0 | desired_matrix = (struct glyph_matrix *) 0x11073dc80 | paused_p = false | preempt_count = 17 | rif = (struct redisplay_interface *) 0x1007d8e98 | #9 0x00000001000066af in update_window_tree (w=0x10281cc30, force_p=true) at dispnew.c:3219 | paused_p = false | #10 0x000000010000638b in update_frame (f=0x10281dc30, force_p=true, inhibit_hairy_id_p=false) at dispnew.c:3108 | paused_p = false | root_window = (struct window *) 0x10281cc30 | #11 0x0000000100051fa9 in redisplay_internal () at xdisp.c:13815 | gcscrollbars = false | f = (struct frame *) 0x10281dc30 | w = (struct window *) 0x10281cc30 | sw = (struct window *) 0x10281cc30 | fr = (struct frame *) 0x10281dc30 | pending = false | must_finish = false | match_p = true | tlbufpos = { | charpos = 68726, | bytepos = 68771 | } | tlendpos = { | charpos = 212048, | bytepos = 212053 | } | number_of_visible_frames = 1 | count = 2 | sf = (struct frame *) 0x10281dc30 | polling_stopped_here = true | tail = 4395852867 | frame = 4337032245 | consider_all_windows_p = true | update_miniwindow_p = false | #12 0x0000000100053ac9 in redisplay () at xdisp.c:13059 | No locals. | #13 0x0000000100184339 in read_char (commandflag=1, map=4799273539, prev_event=0, used_mouse_menu=0x7fff5fbfefb7, end_time=0x0) at keyboard.c:2465 | echo_current = true | c = 0 | jmpcount = 140734799801360 | local_getcjmp = 0x7fff5fbfeba0 | save_jump = 0x7fff5fbfeb00 | tem = 2 | save = 0 | previous_echo_area_message = 0 | also_record = 0 | reread = false | recorded = false | polling_stopped_here = false | orig_kboard = (struct kboard *) 0x101317100 | #14 0x000000010017f299 in read_key_sequence (keybuf=0x7fff5fbff2f0, bufsize=30, prompt=0, dont_downcase_last=false, can_return_switch_frame=true, fix_current_buffer=true, prevent_redisplay=false) at keyboard.c:9030 | interrupted_kboard = (KBOARD *) 0x101317100 | interrupted_frame = (struct frame *) 0x10281dc30 | key = 140734799802480 | used_mouse_menu = false | echo_local_start = 0 | last_real_key_start = 0 | keys_local_start = 0 | new_binding = 80853 | count = 2 | t = 0 | echo_start = 0 | keys_start = 0 | current_binding = 4799273539 | first_event = 0 | first_unbound = 31 | mock_input = 0 | fkey = { | parent = 4395752691, | map = 4395752691, | start = 0, | end = 0 | } | keytran = { | parent = 4328555075, | map = 4328555075, | start = 0, | end = 0 | } | indec = { | parent = 4395752755, | map = 4395752755, | start = 0, | end = 0 | } | shift_translated = false | delayed_switch_frame = 0 | original_uppercase = 0 | original_uppercase_position = -1 | dummyflag = false | starting_buffer = (struct buffer *) 0x1109d4ea0 | fake_prefixed_keys = 0 | #15 0x000000010017db96 in command_loop_1 () at keyboard.c:1348 | cmd = 25432416 | keybuf = 0x7fff5fbff2f0 | i = 1 | prev_modiff = 46181 | prev_buffer = (struct buffer *) 0x1109d4ea0 | already_adjusted = false | #16 0x0000000100260706 in internal_condition_case (bfun=0x10017d5a0 , handlers=17616, hfun=0x100198e10 ) at eval.c:1309 | val = 4303299704 | c = (struct handler *) 0x1010099e0 | #17 0x0000000100198d0c in command_loop_2 (ignore=0) at keyboard.c:1088 | val = 2 | #18 0x000000010025f7ce in internal_catch (tag=42768, func=0x100198ce0 , arg=0) at eval.c:1073 | val = 0 | c = (struct handler *) 0x1010098f0 | #19 0x000000010017c8e0 in command_loop () at keyboard.c:1067 | No locals. | #20 0x000000010017c722 in recursive_edit_1 () at keyboard.c:673 | count = 1 | val = 0 | #21 0x000000010017cb13 in Frecursive_edit () at keyboard.c:744 | count = 0 | buffer = 0 | #22 0x000000010017a6ba in main (argc=1, argv=0x7fff5fbff8f0) at emacs.c:1643 | dummy = 140734799806464 | stack_bottom_variable = 0 '\0' | do_initial_setlocale = true | dumping = false | skip_args = 0 | rlim = { | rlim_cur = 8720000, | rlim_max = 67104768 | } | no_loadup = false | junk = 0x0 | dname_arg = 0x0 | dname_arg2 = 0x7fff5fbff870 "\001" | ch_to_dir = 0x0 | original_pwd = 0x0 | | Lisp Backtrace: | "redisplay_internal (C function)" (0x0) | (gdb) `---- The face is as follow: (the one where it crashed was not saved, not even in the autosave, so I choose the same one (******* plot)). Here is a link to the screenshot (or should I attach the next time?) describe-text-properties ,---- | Text content at position 68694: | | | There are text properties here: | face org-level-4 | fontified t | line-prefix [Show] | org-category "EnergyBalance" | org-stats 0 | wrap-prefix [Show] | | [back] `---- describe-face ,---- | Face: org-level-4 (sample) (customize this face) | | Documentation: | Face used for level 4 headlines. | | Defined in ‘org-faces.el’. | | Family: unspecified | Foundry: unspecified | Width: unspecified | Height: 1.0 | Weight: bold | Slant: normal | Foreground: #EA6300 | DistantForeground: unspecified | Background: unspecified | Underline: unspecified | Overline: unspecified | Strike-through: unspecified | Box: unspecified | Inverse: unspecified | Stipple: unspecified | Font: unspecified | Fontset: unspecified | Inherit: unspecified | | [back] `---- Rainer > > Thanks. -- Rainer M. Krug, PhD (Conservation Ecology, SUN), MSc (Conservation Biology, UCT), Dipl. Phys. (Germany) Centre of Excellence for Invasion Biology Stellenbosch University South Africa Tel : +33 - (0)9 53 10 27 44 Cell: +33 - (0)6 85 62 59 98 Fax : +33 - (0)9 58 10 27 44 Fax (D): +49 - (0)3 21 21 25 22 44 email: Rainer@krugs.de Skype: RMkrug PGP: 0x0F52F982