Bug 430349

Summary: vim hangs during some delete operations
Product: [Fedora] Fedora Reporter: Frank Ch. Eigler <fche>
Component: vimAssignee: Karsten Hopp <karsten>
Status: CLOSED CURRENTRELEASE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: low Docs Contact:
Priority: low    
Version: 8   
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: 7.1.211-1? Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2008-04-24 02:41:54 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Frank Ch. Eigler 2008-01-26 17:47:15 UTC
Description of problem:
At times, when pasting lines of text into a vi-running xterm, vi hangs.
^C doesn't work; nothing short of -9 brings it out.  Attaching a debugger
sez:

(gdb) bt
#0  u_freeheader (buf=0x9c0900, uhp=0xa5af50, uhpp=0x7fff15b3ca30)
    at undo.c:1665
#1  0x0000000000543639 in u_savecommon (top=44, bot=46, newbot=0) at undo.c:425
#2  0x00000000004dc235 in op_delete (oap=0x7fff15b3cc20) at ops.c:1851
#3  0x00000000004d0581 in do_pending_operator (cap=0x7fff15b3cb90, old_col=0, 
    gui_yank=0) at normal.c:1865
#4  0x00000000004d6e1c in normal_cmd (oap=0x7fff15b3cc20, toplevel=1)
    at normal.c:1167
#5  0x00000000004a016d in main_loop (cmdwin=0, noexmode=0) at main.c:1181
#6  0x00000000004a254a in main (argc=<value optimized out>, 
    argv=<value optimized out>) at main.c:940

There's a loop in there manipulating some linked lists that
appear to have become circular:

1664            for (uhap = uhp->uh_prev; uhap != NULL; uhap = uhap->uh_alt_next)
2: uhap = (u_header_T *) 0x3b0c552c10
1: uhp = (u_header_T *) 0xa5af50
(gdb) 
1665                uhap->uh_next = uhp->uh_next;
2: uhap = (u_header_T *) 0x3b0c552c10
1: uhp = (u_header_T *) 0xa5af50
(gdb) 
1664            for (uhap = uhp->uh_prev; uhap != NULL; uhap = uhap->uh_alt_next)
2: uhap = (u_header_T *) 0x3b0c552c10
1: uhp = (u_header_T *) 0xa5af50


Version-Release number of selected component (if applicable):
vim-common-7.1.135-1.fc8.x86_64
vim-debuginfo-7.1.135-1.fc8.x86_64
vim-minimal-7.1.135-1.fc8.x86_64
vim-enhanced-7.1.135-1.fc8.x86_64

How reproducible:
Unfortunately, this is intermittent.

Additional info:
I induced a core dump with kill -SEGV (-QUIT and -TERM didn't do it).
I can share it if it's useful.

Comment 1 Karsten Hopp 2008-01-26 21:31:51 UTC
Can please try again with vim-7.1.211-1.fc8 from either the .testing repository
or soon from the normal update repository ? And report success or failure here,
please.

Comment 2 Frank Ch. Eigler 2008-04-24 02:41:54 UTC
I haven't seen this bug reappear since the new code.