Vim crashed randomly today with assertion failure. The code that triggered this crash was merged recently in v9.2.0093 (98174ca)
These asserts were added in v9.1.1469 (9d065a4) as a safety check.
Unfortunately, I don't have a reproducer yet.
No crash
v9.2.0140
Operating system: Arch Linux
Terminal: xterm
$TERM: xterm-256color
Shell: bash
Reading symbols from /usr/bin/vim... Reading symbols from /usr/lib/debug/usr/bin/vim.debug... [New LWP 155807] [New LWP 155814] [Thread debugging using libthread_db enabled] Using host libthread_db library "/usr/lib/libthread_db.so.1". Core was generated by `/usr/bin/vim PKGBUILD'. Program terminated with signal SIGABRT, Aborted. #0 0x00007f566055f4db in __GI_kill () at ../sysdeps/unix/syscall-template.S:120 120 T_PSEUDO (SYSCALL_SYMBOL, SYSCALL_NAME, SYSCALL_NARGS) [Current thread is 1 (Thread 0x7f5660a96e80 (LWP 155807))] -(gdb) bt #0 0x00007f566055f4db in __GI_kill () at ../sysdeps/unix/syscall-template.S:120 #1 0x0000557072104da5 in may_core_dump () at os_unix.c:3868 #2 may_core_dump () at os_unix.c:3863 #3 mch_exit (r=1) at os_unix.c:3834 #4 <signal handler called> #5 __pthread_kill_implementation (threadid=<optimized out>, signo=signo@entry=6, no_tid=no_tid@entry=0) at pthread_kill.c:44 #6 0x00007f56605b9af3 in __pthread_kill_internal (threadid=<optimized out>, signo=6) at pthread_kill.c:89 #7 0x00007f566055f1a0 in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26 #8 0x00007f56605465fe in __GI_abort () at abort.c:77 #9 0x00007f5660547697 in __libc_message_impl (vma_name=vma_name@entry=0x7f56606d0f7b "glibc: assert", fmt=<optimized out>) at ../sysdeps/posix/libc_fatal.c:138 #10 0x00007f56605570b2 in __libc_message_wrapper (vmaname=0x7f56606d0f7b "glibc: assert", fmt=<optimized out>) at ../include/stdio.h:203 #11 __assert_fail (assertion=assertion@entry=0x55707229d805 "hl_id > 0", file=file@entry=0x55707229d7f9 "highlight.c", line=line@entry=4015, function=function@entry=0x5570722b39f0 <__PRETTY_FUNCTION__.4> "syn_id2attr") at assert.c:37 #12 0x0000557071f86366 in syn_id2attr (hl_id=<optimized out>) at highlight.c:4015 #13 syn_id2attr (hl_id=<optimized out>) at highlight.c:4008 #14 0x000055707207a3cd in set_highlight_attr (arr=arr@entry=0x5570a3ded5f0, len=len@entry=9536, update_ids=update_ids@entry=false) at highlight.c:5558 #15 0x000055707207b567 in push_highlight_overrides (arr=0x5570a3ded5f0, len=9536) at highlight.c:5598 #16 0x000055707216353b in draw_tabline () at screen.c:4702 #17 0x0000557071fe4c9d in update_screen (type_arg=type_arg@entry=0) at drawscreen.c:284 #18 0x000055707228c7be in main_loop (cmdwin=cmdwin@entry=0, noexmode=noexmode@entry=0) at main.c:1529 #19 0x000055707228d99c in vim_main2 () at main.c:979 #20 0x00007f56605486c1 in __libc_start_call_main (main=main@entry=0x557071f905d0 <main>, argc=argc@entry=2, argv=argv@entry=0x7ffd31896578) at ../sysdeps/nptl/libc_start_call_main.h:59 #21 0x00007f56605487f9 in __libc_start_main_impl (main=0x557071f905d0 <main>, argc=2, argv=0x7ffd31896578, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7ffd31896568) at ../csu/libc-start.c:360 #22 0x0000557071f92345 in _start () -(gdb) f 12 #12 0x0000557071f86366 in syn_id2attr (hl_id=<optimized out>) at highlight.c:4015 4015 assert(hl_id > 0); -(gdb) l 4010 int attr; 4011 hl_group_T *sgp; 4012 4013 hl_id = syn_get_final_id(hl_id); 4014 // shouldn't happen 4015 assert(hl_id > 0); 4016 sgp = &HL_TABLE()[hl_id - 1]; // index is ID minus one 4017 4018 #ifdef FEAT_GUI 4019 // Only use GUI attr when the GUI is being used. -(gdb) f 16 #16 0x000055707216353b in draw_tabline () at screen.c:4702 4702 override_success = push_highlight_overrides( -(gdb) l 4697 for (tp = first_tabpage; tp != NULL && col < Columns - 4; 4698 tp = tp->tp_next) 4699 { 4700 scol = col; 4701 4702 override_success = push_highlight_overrides( 4703 tp->tp_curwin->w_hl, tp->tp_curwin->w_hl_len); 4704 4705 // Update them each time since highlight override might change them. 4706 attr_sel = HL_ATTR(HLF_TPS); -(gdb)
—
Reply to this email directly, view it on GitHub.
You are receiving this because you are subscribed to this thread.![]()
Yes I am aware of this crash (I have also been experiencing it as well). If I remember when I looked at the coredump, it seemed the crash was due to uninitialized values. However unfortunately I cannot find a reliable way to reproduce this :/ If you find a way to repro this please tell me. Thanks
—
Reply to this email directly, view it on GitHub.
You are receiving this because you are subscribed to this thread.![]()