Ticket #3438 (closed defect: fixed)

Opened 7 years ago

Last modified 7 years ago

[patch] fix memleak at filemanager/dir.c:dir_list_load()

Reported by: and Owned by:
Priority: major Milestone: 4.8.15
Component: mc-core Version: master
Keywords: Cc:
Blocked By: Blocking:
Branch state: no branch Votes for changeset: committed-master

Description

fix memleak at filemanager/dir.c:dir_list_load()

when root directory found list->len is decrease but listobj->fname object will never be freed
clear list instead of resetting list len only

(found by LeakSanitizer?)

==26995==ERROR: LeakSanitizer: detected memory leaks

Direct leak of 3 byte(s) in 1 object(s) allocated from:
    #0 0x4d5fc2 in malloc (/tmp/portage/app-misc/mc-9999/work/mc-9999/src/mc+0x4d5fc2)
    #1 0x7f09043c47d4 in g_malloc (/usr/lib64/libglib-2.0.so.0+0x677d4)
    #2 0x7f09043eb20e in g_strndup (/usr/lib64/libglib-2.0.so.0+0x8e20e)
    #3 0x7ace80 in dir_list_init /tmp/portage/app-misc/mc-9999/work/mc-9999/src/filemanager/dir.c:568:21
    #4 0x7ad9d0 in dir_list_load /tmp/portage/app-misc/mc-9999/work/mc-9999/src/filemanager/dir.c:636:10
    #5 0x5aa858 in panel_new_with_dir /tmp/portage/app-misc/mc-9999/work/mc-9999/src/filemanager/panel.c:4311:5
    #6 0x58fac2 in set_display_type /tmp/portage/app-misc/mc-9999/work/mc-9999/src/filemanager/layout.c:1003:22
    #7 0x5a2944 in create_panels /tmp/portage/app-misc/mc-9999/work/mc-9999/src/filemanager/midnight.c:686:5
    #8 0x5a1e66 in create_panels_and_run_mc /tmp/portage/app-misc/mc-9999/work/mc-9999/src/filemanager/midnight.c:944:5
    #9 0x59fc1a in do_nc /tmp/portage/app-misc/mc-9999/work/mc-9999/src/filemanager/midnight.c:1763:9
    #10 0x4fa648 in main /tmp/portage/app-misc/mc-9999/work/mc-9999/src/main.c:418:21
    #11 0x7f090323b133 in __libc_start_main (/lib64/libc.so.6+0x20133)
    #12 0x44eff6 in _start (/tmp/portage/app-misc/mc-9999/work/mc-9999/src/mc+0x44eff6)

Signed-off-by: Andreas Mohr <and@…>

Attachments

mc-3438-fix-memleak-dir_list_load.patch (2.4 KB) - added by and 7 years ago.

Change History

Changed 7 years ago by and

comment:1 Changed 7 years ago by andrew_b

  • Blocked By 3420 added

comment:2 Changed 7 years ago by andrew_b

  • Blocked By 3420 removed

comment:3 Changed 7 years ago by andrew_b

  • Status changed from new to closed
  • Votes for changeset set to committed-master
  • Resolution set to fixed
  • Milestone changed from Future Releases to 4.8.15
Note: See TracTickets for help on using tickets.