I recently get segfaults when opening a certain file with vim in urxvt. I
failed to create a minimal case for reproducing this bug, it seems to be
related to:
- the file in question (gnu Makefile)
- my vim configuration (huge!)
- the urxvt window size (95x63)

As my vimrc uses many plugin specific settings, I didn't post it here. Let
me know if that would be of any help.

urxvt seems to crash randomly at one of the following places:

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1214121696 (LWP 24222)]
0x0806ef56 in rxvt_term::scr_scroll_text (this=0x8165cd8, row1=0, row2=62,
count=482122)
    at screen.C:646
646              if (l.r && l.l < ncol - 1 && !((l.r[l.l + 1] ^ rstyle) &
(RS_fgMask | RS_bgMask)))
(gdb) bt
#0  0x0806ef56 in rxvt_term::scr_scroll_text (this=0x8165cd8, row1=0,
row2=62, count=482122)
    at screen.C:646
#1  0x0805de25 in rxvt_term::process_csi_seq (this=0x8165cd8) at
command.C:2935
#2  0x0805e34f in rxvt_term::process_escape_seq (this=0x8165cd8) at
command.C:2687
#3  0x0805e553 in rxvt_term::cmd_parse (this=0x8165cd8) at command.C:2292
#4  0x0805fc2b in rxvt_term::pty_cb (this=0x8165cd8, [EMAIL PROTECTED],
revents=1) at command.C:1194
#5  0x0806b54b in ev::base<ev_io, ev::io>::method_thunk<rxvt_term,
&(rxvt_term::pty_cb(ev::io&, int))> (w=0x8167698, revents=1) at
../libev/ev++.h:454
#6  0x0807c5cc in call_pending () at ../libev/ev.c:1695
#7  0x0807e25a in ev_loop (flags=<value optimized out>) at
../libev/ev.c:2024
#8  0x0805a6de in main (argc=-1082110380, argv=0x8167c60) at rxvt.C:54
(gdb) l
641            {
642              line_t &l = ROW(nrow - 1 - i);
643
644              // optimize if already cleared, can be significant on slow
machines
645              // could be rolled into scr_blank_screen_mem
646              if (l.r && l.l < ncol - 1 && !((l.r[l.l + 1] ^ rstyle) &
(RS_fgMask | RS_bgMask)))
647                {
648                  scr_blank_line (l, 0, l.l, rstyle);
649                  l.l = 0;
650                  l.f = 0;
(gdb) p l
$1 = (line_t &) @0x836e588: {t = 0x20, r = 0x20, l = 32, f = 32}
(gdb) p ncol
$2 = 124
(gdb) r
Starting program: /usr/bin/urxvt
[Thread debugging using libthread_db enabled]
[New Thread -1213699808 (LWP 24307)]

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1213699808 (LWP 24307)]
rxvt_term::scr_blank_line (this=0x8165cd8, [EMAIL PROTECTED], col=0, width=124,
efs=16787766)
    at screen.C:135
135          *et++ = ' ';
(gdb) bt
#0  rxvt_term::scr_blank_line (this=0x8165cd8, [EMAIL PROTECTED], col=0,
width=124, efs=16787766)
    at screen.C:135
#1  0x0806ee35 in rxvt_term::scr_blank_screen_mem (this=0x8165cd8,
[EMAIL PROTECTED], efs=10550)
    at screen.C:145
#2  0x0806ef79 in rxvt_term::scr_scroll_text (this=0x8165cd8, row1=0,
row2=62, count=482122)
    at screen.C:653
#3  0x0805de25 in rxvt_term::process_csi_seq (this=0x8165cd8) at
command.C:2935
#4  0x0805e34f in rxvt_term::process_escape_seq (this=0x8165cd8) at
command.C:2687
#5  0x0805e553 in rxvt_term::cmd_parse (this=0x8165cd8) at command.C:2292
#6  0x0805fc2b in rxvt_term::pty_cb (this=0x8165cd8, [EMAIL PROTECTED],
revents=1) at command.C:1194
#7  0x0806b54b in ev::base<ev_io, ev::io>::method_thunk<rxvt_term,
&(rxvt_term::pty_cb(ev::io&, int))> (w=0x8167698, revents=1) at
../libev/ev++.h:454
#8  0x0807c5cc in call_pending () at ../libev/ev.c:1695
#9  0x0807e25a in ev_loop (flags=<value optimized out>) at
../libev/ev.c:2024
#10 0x0805a6de in main (argc=-1077486924, argv=0x8167c60) at rxvt.C:54
(gdb) l
130      text_t *et = l.t + col;
131      rend_t *er = l.r + col;
132
133      while (width--)
134        {
135          *et++ = ' ';
136          *er++ = efs;
137        }
138    }
139
(gdb) p et
$1 = (text_t *) 0x1002951
(gdb) p *et
Cannot access memory at address 0x1002951
(gdb) p *er
Cannot access memory at address 0x1002951
(gdb) p l
$2 = (line_t &) @0x82fa110: {t = 0x1002951, r = 0x1002951, l = 16787793, f =
16787793}
(gdb)

Thanks for your help, and keep up the good work!

Chris
-- 
echo mailto: NOSPAM !#$.'<*>'|sed 's. ..'|tr "<*> !#:2" [EMAIL PROTECTED]
_______________________________________________
rxvt-unicode mailing list
[email protected]
http://lists.schmorp.de/cgi-bin/mailman/listinfo/rxvt-unicode

Reply via email to