Ticket #1429 (closed defect: fixed)

Opened 9 years ago

Last modified 9 years ago

segfault on path completion

Reported by: iNode Owned by: slavazanko
Priority: major Milestone: 4.7.0-pre1
Component: mc-core Version: master
Keywords: Cc:
Blocked By: Blocking:
Branch state: Votes for changeset: committed-master

Description (last modified by iNode) (diff)

Sometimes on input in command line:

cd <M-Tab><M-Tab>(and press s in completion list)

mc segfaults.
(M mean Meta, Meta is Alt or Esc or Meta key)

Backtrace:

(gdb) where full
#0  0xb7e4751f in memcpy () from /lib/libc.so.6
No symbol table info available.
#1  0x08065a48 in insert_text (in=0x9caf000, text=0x9c755b0 "subshell.o", size=-2)
    at /usr/include/bits/string3.h:52
        buff_len = 3
#2  0x080666c3 in query_callback (h=0x9c7aaf0, msg=DLG_KEY, parm=115) at complete.c:1012
        e = (WLEntry *) 0x9c7b810
        e1 = (WLEntry *) 0x9c7b810
        need_redraw = 2
        low = -2
        last_text = 0x9c755b0 "subshell.o"
        buff = "s", '\0' <repeats 14 times>
        bl = 1
#3  0x080674b3 in dlg_process_event (h=0x9c7aaf0, key=115, event=0xbf8f8a60) at dialog.c:662
No locals.
#4  0x08067907 in run_dlg (h=0x9c7aaf0) at dialog.c:808
No locals.
#5  0x08065d25 in complete (in=0x9c8dd00) at complete.c:1109
        engine_flags = 2
#6  0x080a1565 in handle_char (in=0x9c8dd00, c_code=8201) at widget.c:1663
        v = <value optimized out>
        i = -3
#7  0x0807eb1f in midnight_callback (h=0x9c7b8a3, msg=DLG_UNHANDLED_KEY, parm=8201) at dialog.h:207
        i = <value optimized out>
#8  0x080675f7 in dlg_process_event (h=0x9c6fe58, key=8201, event=0xbf8f8b80) at dialog.c:677
No locals.
#9  0x08067907 in run_dlg (h=0x9c6fe58) at dialog.c:808
No locals.
#10 0x0808004d in main (argc=Cannot access memory at address 0x3fff3228
) at main.c:1797
        s = {st_dev = 2053, __pad1 = 0, __st_ino = 705710, st_mode = 16877, st_nlink = 4, st_uid = 1000, 
  st_gid = 10, st_rdev = 0, __pad2 = 0, st_size = 4096, st_blksize = 4096, st_blocks = 8, st_atim = {
    tv_sec = 1248887295, tv_nsec = 0}, st_mtim = {tv_sec = 1248891754, tv_nsec = 0}, st_ctim = {
    tv_sec = 1248891754, tv_nsec = 0}, st_ino = 705710}
        mc_dir = <value optimized out>

Change History

comment:1 Changed 9 years ago by iNode

  • Description modified (diff)

comment:2 Changed 9 years ago by andrew_b

#1  0x08065a48 in insert_text (in=0x9caf000, text=0x9c755b0 "subshell.o", size=-2)

segfault is happened because size < 0.

comment:3 Changed 9 years ago by slavazanko

  • Status changed from new to accepted
  • Owner set to slavazanko
  • severity changed from no branch to on review
  • Milestone changed from 4.7.0-pre2 to 4.7.0-pre1

Created branch 1429_segfault_on_path_completion (parent: master)

initial changeset:5c3f93206714de0f7bc895b9527d21a34862b14f

review, please.

comment:4 Changed 9 years ago by andrew_b

  • Votes for changeset set to andrew_b

comment:5 Changed 9 years ago by iNode

  • Votes for changeset changed from andrew_b to andrew_b iNode
  • severity changed from on review to approved

comment:6 Changed 9 years ago by angel_il

  • Votes for changeset changed from andrew_b iNode to andrew_b iNode angel_il

comment:7 Changed 9 years ago by angel_il

  • Status changed from accepted to testing
  • Votes for changeset changed from andrew_b iNode angel_il to commited-master
  • Resolution set to fixed
  • severity changed from approved to merged

comment:8 Changed 9 years ago by angel_il

  • Status changed from testing to closed
Note: See TracTickets for help on using tickets.