From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: multipart/mixed; boundary="===============7721994324343585808==" MIME-Version: 1.0 From: Mark Wielaard To: elfutils-devel@lists.fedorahosted.org Subject: [PATCH] libdwfl: Don't leak memory in proc_maps_report when ENOEXEC. Date: Sat, 13 Feb 2016 19:49:52 +0100 Message-ID: <1455389392-12993-1-git-send-email-mjw@redhat.com> --===============7721994324343585808== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable We forgot to free last_file on error. Signed-off-by: Mark Wielaard --- libdwfl/ChangeLog | 4 ++++ libdwfl/linux-proc-maps.c | 3 ++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/libdwfl/ChangeLog b/libdwfl/ChangeLog index 903c0cc..69fd233 100644 --- a/libdwfl/ChangeLog +++ b/libdwfl/ChangeLog @@ -1,5 +1,9 @@ 2016-02-13 Mark Wielaard = + * linux-proc-maps.c (proc_maps_report): Free last_file when ENOEXEC. + +2016-02-13 Mark Wielaard + * frame_unwind.c (new_unwound): Check and return unwound. (handle_cfi): Check new_unwound was able to allocate new memory before use. Return DWFL_E_NOMEM otherwise. diff --git a/libdwfl/linux-proc-maps.c b/libdwfl/linux-proc-maps.c index 9e7b2a2..94b26d5 100644 --- a/libdwfl/linux-proc-maps.c +++ b/libdwfl/linux-proc-maps.c @@ -1,5 +1,5 @@ /* Standard libdwfl callbacks for debugging a live Linux process. - Copyright (C) 2005-2010, 2013, 2014 Red Hat, Inc. + Copyright (C) 2005-2010, 2013, 2014, 2016 Red Hat, Inc. This file is part of elfutils. = This file is free software; you can redistribute it and/or modify @@ -218,6 +218,7 @@ proc_maps_report (Dwfl *dwfl, FILE *f, GElf_Addr sysinf= o_ehdr, pid_t pid) || nread <=3D 0) { free (line); + free (last_file); return ENOEXEC; } = -- = 2.5.0 --===============7721994324343585808==--