Hi, I found readline some memory leak, please fix it, thanks a lot. Respectfully, lessbug ---------------------------- The version number and release status of Readline (e.g., 4.2-release) -- download from ftp://ftp.gnu.org/gnu/readline/readline-8.0.tar.gz The machine and OS that it is running on -- CentOS Linux release 7.4.1708 (Core) A list of the compilation flags or the contents of `config.h', if appropriate -- attachment config.h a description of the bug -- memory leak a recipe for recreating the bug reliably -- valgrind --leak-check=full ./test-demo -- test-demo is my demo used libreadline.a libhistory.a a fix for the bug if you have one! -- not fixed valgrind --leak-check=full ./test-demo ==77924== Memcheck, a memory error detector ==77924== Copyright (C) 2002-2015, and GNU GPL'd, by Julian Seward et al. ==77924== Using Valgrind-3.12.0 and LibVEX; rerun with -h for copyright info ==77924== Command: ./test-demo ==77924== demo> a No commands match 'a' demo> test qu para(0)=qu demo> quit ==77924== ==77924== HEAP SUMMARY: ==77924== in use at exit: 83,519 bytes in 140 blocks ==77924== total heap usage: 442 allocs, 302 frees, 101,844 bytes allocated ==77924== ==77924== 2 bytes in 1 blocks are definitely lost in loss record 1 of 43 ==77924== at 0x4C29BE3: malloc (vg_replace_malloc.c:299) ==77924== by 0x41F20C: xmalloc (xmalloc.c:59) ==77924== by 0x413351: rl_copy_text (util.c:155) ==77924== by 0x416743: rl_delete_text (text.c:142) ==77924== by 0x41683E: _rl_replace_text (text.c:192) ==77924== by 0x406C9A: insert_match (complete.c:1839) ==77924== by 0x4083B2: rl_complete_internal (complete.c:2055) ==77924== by 0x408727: rl_complete (complete.c:438) ==77924== by 0x403DCD: _rl_dispatch_subseq (readline.c:852) ==77924== by 0x4040C8: _rl_dispatch (readline.c:798) ==77924== by 0x404241: readline_internal_char (readline.c:632) ==77924== by 0x4047B6: readline_internal_charloop (readline.c:659) ==77924== by 0x4047B6: readline_internal (readline.c:671) ==77924== by 0x4047B6: readline (readline.c:377) ==77924== ==77924== 12 bytes in 6 blocks are definitely lost in loss record 8 of 43 ==77924== at 0x4C29BE3: malloc (vg_replace_malloc.c:299) ==77924== by 0x41F20C: xmalloc (xmalloc.c:59) ==77924== by 0x413351: rl_copy_text (util.c:155) ==77924== by 0x416743: rl_delete_text (text.c:142) ==77924== by 0x417DFC: _rl_rubout_char (text.c:1219) ==77924== by 0x417E44: rl_rubout (text.c:1179) ==77924== by 0x403DCD: _rl_dispatch_subseq (readline.c:852) ==77924== by 0x4040C8: _rl_dispatch (readline.c:798) ==77924== by 0x404241: readline_internal_char (readline.c:632) ==77924== by 0x4047B6: readline_internal_charloop (readline.c:659) ==77924== by 0x4047B6: readline_internal (readline.c:671) ==77924== by 0x4047B6: readline (readline.c:377) ==77924== by 0x40325C: cmd_run() (cmd.cpp:342) ==77924== by 0x402896: main (test-demo.cpp:98) ==77924== ==77924== LEAK SUMMARY: ==77924== definitely lost: 14 bytes in 7 blocks ==77924== indirectly lost: 0 bytes in 0 blocks ==77924== possibly lost: 0 bytes in 0 blocks ==77924== still reachable: 83,505 bytes in 133 blocks ==77924== suppressed: 0 bytes in 0 blocks ==77924== Reachable blocks (those to which a pointer was found) are not shown. ==77924== To see them, rerun with: --leak-check=full --show-leak-kinds=all
==77526== ==77526== HEAP SUMMARY: ==77526== in use at exit: 83,555 bytes in 139 blocks ==77526== total heap usage: 511 allocs, 372 frees, 102,587 bytes allocated ==77526== ==77526== 102 (64 direct, 38 indirect) bytes in 2 blocks are definitely lost in loss record 19 of 44 ==77526== at 0x4C29BE3: malloc (vg_replace_malloc.c:299) ==77526== by 0x41F2DC: xmalloc (xmalloc.c:59) ==77526== by 0x4143FD: alloc_undo_entry (undo.c:77) ==77526== by 0x4143FD: rl_add_undo (undo.c:94) ==77526== by 0x416870: rl_delete_text (text.c:151) ==77526== by 0x417ECC: _rl_rubout_char (text.c:1219) ==77526== by 0x417F14: rl_rubout (text.c:1179) ==77526== by 0x403DCD: _rl_dispatch_subseq (readline.c:852) ==77526== by 0x4040C8: _rl_dispatch (readline.c:798) ==77526== by 0x404241: readline_internal_char (readline.c:632) ==77526== by 0x4047B6: readline_internal_charloop (readline.c:659) ==77526== by 0x4047B6: readline_internal (readline.c:671) ==77526== by 0x4047B6: readline (readline.c:377) ==77526== by 0x40325C: cmd_run() (cmd.cpp:342) ==77526== by 0x402896: main (test-demo.cpp:98) ==77526== ==77526== LEAK SUMMARY: ==77526== definitely lost: 64 bytes in 2 blocks ==77526== indirectly lost: 38 bytes in 4 blocks ==77526== possibly lost: 0 bytes in 0 blocks ==77526== still reachable: 83,453 bytes in 133 blocks ==77526== suppressed: 0 bytes in 0 blocks ==77526== Reachable blocks (those to which a pointer was found) are not shown. ==77526== To see them, rerun with: --leak-check=full --show-leak-kinds=all
config.h
Description: Binary data
_______________________________________________ Bug-readline mailing list [email protected] https://lists.gnu.org/mailman/listinfo/bug-readline
