vile
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [vile] vile-9.7[stu] gets stuck "working..."


From: Clem Taylor
Subject: Re: [vile] vile-9.7[stu] gets stuck "working..."
Date: Sat, 5 Sep 2009 15:01:32 -0400

On Fri, Sep 4, 2009 at 6:07 PM, Thomas Dickey<address@hidden> wrote:
> that's the first user of "reflex" that I've seen.

vile wouldn't compile with flex 2.5.35, so I used reflex instead.

> hmm.  I vaguely recall some comment like that, but haven't _seen_ it myself.

On the other systems I have 9.5[rl] which don't seem to have this problem.
> That's interesting - are you editing the [HighlightClear] buffer?

I wasn't. I seem to be able to reproduce the problem just typing out a
hello world program making many mistakes, but I haven't been able to
come up with what the combination is needed it trigger the problem. It
seems to be easier to trigger it over an ssh connection (with a slow
link).

> To test that quickly, I'd suggest just changing line 4619 to "#if 0"
> and see if I could reproduce the problem easily.
>
> I'm looking at this line:
>
>        if (!waiting && !im_timing && ShowWorking())
>
> and seeing that "!waiting" would be true after a call from input.c line 572:
>
>        (void) im_waiting(FALSE);

I tried that and it and it still fails, but now it doesn't print
"working...". I've managed to trigger the bug multiple times with the
same process: open up a file, split the window, create a new file,
copy 5 or so lines from the first file, paste them in the new file,
goto the first line of the new file and delete it with 'dd'.

Program received signal SIGINT, Interrupt.
*__GI_strncpy (s1=0x7fffffffdd2b "", s2=0x4c2700 "[Buffer List]", n=21)
    at strncpy.c:35
35        if (n >= 4)
Current language:  auto; currently minimal
(gdb) where
#0  *__GI_strncpy (s1=0x7fffffffdd2b "", s2=0x4c2700 "[Buffer List]", n=21)
    at strncpy.c:35
#1  0x0000000000404e0d in strncpy0 (t=0x7fffffffdd2b "",
    f=0x4c2700 "[Buffer List]", l=21) at main.c:2599
#2  0x000000000040f4a5 in set_bname (bp=0x7fffffffd610,
    name=0x4c2700 "[Buffer List]") at buffer.c:2504
#3  0x000000000040f8c7 in find_b_name (bname=0x4c2700 "[Buffer List]")
    at buffer.c:2528
#4  0x000000000040f919 in update_scratch (name=0x7fffffffdd2b "",
    func=0x4c2700 <BUFFERLIST_BufName>) at buffer.c:2263
#5  0x00000000004104f5 in chg_buff (bp=0x7de240, flag=9984) at buffer.c:2809
#6  0x00000000004374e7 in ldel_bytes (nbytes=1, kflag=1) at line.c:757
#7  0x000000000044f40c in killregionmaybesave (save=1) at region.c:219
#8  0x0000000000443a21 in vile_op (f=0, n=1, fn=0x44ff90 <killregion>,
    str=0x4c521b "Delete") at opers.c:124
#9  0x0000000000444343 in operdel (f=-8917, n=4990720) at opers.c:149
#10 0x0000000000423c5d in execute (execfunc=0x4cf9e0, f=4990720, n=21)
    at exec.c:1076
#11 0x0000000000406cac in main_loop () at main.c:1013
#12 main () at main.c:920

I also tried it without a .vilerc:

Program received signal SIGINT, Interrupt.
0x00000000004374d0 in ldel_bytes (nbytes=1, kflag=1) at line.c:756
756             CopyForUndo(DOT.l);
(gdb) where
#0  0x00000000004374d0 in ldel_bytes (nbytes=1, kflag=1) at line.c:756
#1  0x000000000044f40c in killregionmaybesave (save=1) at region.c:219
#2  0x0000000000443a21 in vile_op (f=0, n=1, fn=0x44ff90 <killregion>,
    str=0x4c521b "Delete") at opers.c:124
#3  0x0000000000444343 in operdel (f=8153008, n=8156432) at opers.c:149
#4  0x0000000000423c5d in execute (execfunc=0x4cf9e0, f=8156432, n=7924080)
    at exec.c:1076
#5  0x0000000000406cac in main_loop () at main.c:1013
#6  main () at main.c:920

Or:
Program received signal SIGINT, Interrupt.
strcmp () at ../sysdeps/x86_64/strcmp.S:40
40      L(neq): movl    $1, %eax
Current language:  auto; currently asm
(gdb) where
#0  strcmp () at ../sysdeps/x86_64/strcmp.S:40
#1  0x000000000040f8f8 in find_b_name (bname=<value optimized out>)
    at buffer.c:2531
#2  0x000000000040f919 in update_scratch (name=0x7c36dd "FileCompletion]",
    func=0x7fffffffdced) at buffer.c:2263
#3  0x00000000004104f5 in chg_buff (bp=0x7c6b80, flag=56557) at buffer.c:2809
#4  0x00000000004374e7 in ldel_bytes (nbytes=1, kflag=1) at line.c:757
#5  0x000000000044f40c in killregionmaybesave (save=1) at region.c:219
#6  0x0000000000443a21 in vile_op (f=0, n=1, fn=0x44ff90 <killregion>,
    str=0x4c521b "Delete") at opers.c:124
#7  0x0000000000444343 in operdel (f=8140509, n=-8979) at opers.c:149
#8  0x0000000000423c5d in execute (execfunc=0x4cf9e0, f=-8979, n=0)
    at exec.c:1076
#9  0x0000000000406cac in main_loop () at main.c:1013
#10 main () at main.c:920

Or:
Program received signal SIGINT, Interrupt.
chg_buff (bp=0x7c67b0, flag=4) at buffer.c:2808
2808        if (update_on_chg(bp))
(gdb) where
#0  chg_buff (bp=0x7c67b0, flag=4) at buffer.c:2808
#1  0x00000000004374e7 in ldel_bytes (nbytes=1, kflag=1) at line.c:757
#2  0x000000000044f40c in killregionmaybesave (save=1) at region.c:219
#3  0x0000000000443a21 in vile_op (f=0, n=1, fn=0x44ff90 <killregion>,
    str=0x4c521b "Delete") at opers.c:124
#4  0x0000000000444343 in operdel (f=8153008, n=4) at opers.c:149
#5  0x0000000000423c5d in execute (execfunc=0x4cf9e0, f=4, n=2) at exec.c:1076
#6  0x0000000000406cac in main_loop () at main.c:1013
#7  main () at main.c:920

                                 --Clem




reply via email to

[Prev in Thread] Current Thread [Next in Thread]