[binutils-gdb] PR29254, memory leak in stab_demangle_v3_arg

Alan Modra amodra@sourceware.org
Fri Jun 17 11:59:26 GMT 2022


https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=0ebc886149c22aceaf8ed74267821a59ca9d03eb

commit 0ebc886149c22aceaf8ed74267821a59ca9d03eb
Author: Alan Modra <amodra@gmail.com>
Date:   Fri Jun 17 09:00:41 2022 +0930

    PR29254, memory leak in stab_demangle_v3_arg
    
            PR 29254
            * stabs.c (stab_demangle_v3_arg): Free dt on failure path.

Diff:
---
 binutils/stabs.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/binutils/stabs.c b/binutils/stabs.c
index 2b5241637c1..796ff85b86a 100644
--- a/binutils/stabs.c
+++ b/binutils/stabs.c
@@ -5467,7 +5467,10 @@ stab_demangle_v3_arg (void *dhandle, struct stab_handle *info,
 					  dc->u.s_binary.right,
 					  &varargs);
 	if (pargs == NULL)
-	  return NULL;
+	  {
+	    free (dt);
+	    return NULL;
+	  }
 
 	return debug_make_function_type (dhandle, dt, pargs, varargs);
       }


More information about the Binutils-cvs mailing list