PR29254, memory leak in stab_demangle_v3_arg
authorAlan Modra <amodra@gmail.com>
Thu, 16 Jun 2022 23:30:41 +0000 (09:00 +0930)
committerAlan Modra <amodra@gmail.com>
Fri, 17 Jun 2022 11:38:41 +0000 (21:08 +0930)
PR 29254
* stabs.c (stab_demangle_v3_arg): Free dt on failure path.

binutils/stabs.c

index 2b5241637c101d90aaab0ffc1f4fe79ad9f2c66c..796ff85b86a209cc61f361def48f59df29f0a41b 100644 (file)
@@ -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);
       }