[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: double free error in gawk
From: |
arnold |
Subject: |
Re: double free error in gawk |
Date: |
Wed, 01 Jul 2020 02:50:11 -0600 |
User-agent: |
Heirloom mailx 12.5 7/5/10 |
Hi.
This is an interesting issue. It turns out to be a problem in either
the MPFR or GMP libraries. When I upgrade to the latest versions of
those libraries, valgrind reports no problems.
$ cat t.awk
BEGIN {
$0 = "a0 b"
gsub(/0/, "", $1)
$2 == "b"
$0 = ""
}
$ valgrind --leak-check=full ./gawk -M -f t.awk
==24719== Memcheck, a memory error detector
==24719== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al.
==24719== Using Valgrind-3.13.0 and LibVEX; rerun with -h for copyright info
==24719== Command: ./gawk -M -f t.awk
==24719==
==24719==
==24719== HEAP SUMMARY:
==24719== in use at exit: 99,434 bytes in 1,143 blocks
==24719== total heap usage: 1,262 allocs, 119 frees, 162,787 bytes allocated
==24719==
==24719== LEAK SUMMARY:
==24719== definitely lost: 0 bytes in 0 blocks
==24719== indirectly lost: 0 bytes in 0 blocks
==24719== possibly lost: 0 bytes in 0 blocks
==24719== still reachable: 99,434 bytes in 1,143 blocks
==24719== suppressed: 0 bytes in 0 blocks
==24719== Reachable blocks (those to which a pointer was found) are not shown.
==24719== To see them, rerun with: --leak-check=full --show-leak-kinds=all
==24719==
==24719== For counts of detected and suppressed errors, rerun with: -v
==24719== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0)
Hope this helps,
Arnold
"NIDE, Naoyuki" <nide@ics.nara-wu.ac.jp> wrote:
> Hello,
> gawk causes a double free error with the -M option and a certain program.
>
> $ LC_ALL=C gawk -M 'BEGIN{$0 = "a0 b"; gsub(/0/, "", $1); $2 == "b"; $0 = ""}'
> free(): double free detected in tcache 2
> Aborted (core dumped)
> $ LC_ALL=C gawk --version
> GNU Awk 5.1.0, API: 3.0 (GNU MPFR 3.1.6-p2, GNU MP 6.1.2)
> Copyright (C) 1989, 1991-2020 Free Software Foundation.
>
> This program is free software; you can redistribute it and/or modify
> it under the terms of the GNU General Public License as published by
> the Free Software Foundation; either version 3 of the License, or
> (at your option) any later version.
>
> This program is distributed in the hope that it will be useful,
> but WITHOUT ANY WARRANTY; without even the implied warranty of
> MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
> GNU General Public License for more details.
>
> You should have received a copy of the GNU General Public License
> along with this program. If not, see http://www.gnu.org/licenses/.
>
> --
> NIDE, Naoyuki
> nide@ics.nara-wu.ac.jp
- Re: double free error in gawk,
arnold <=
- Re: double free error in gawk, Andrew J. Schorr, 2020/07/01
- Re: double free error in gawk, NIDE, Naoyuki, 2020/07/01
- Re: double free error in gawk, Andrew J. Schorr, 2020/07/01
- Re: double free error in gawk, Andrew J. Schorr, 2020/07/01
- Re: double free error in gawk, arnold, 2020/07/02
- Re: double free error in gawk, Andrew J. Schorr, 2020/07/02
- Re: double free error in gawk, arnold, 2020/07/02
- Re: double free error in gawk, Andrew J. Schorr, 2020/07/02
- Re: double free error in gawk, Andrew J. Schorr, 2020/07/02
- Re: double free error in gawk, arnold, 2020/07/03