diff options
-rw-r--r-- | libiberty/ChangeLog | 4 | ||||
-rw-r--r-- | libiberty/cplus-dem.c | 5 |
2 files changed, 8 insertions, 1 deletions
diff --git a/libiberty/ChangeLog b/libiberty/ChangeLog index afa8c6b3bd9..b24fb4fc9e2 100644 --- a/libiberty/ChangeLog +++ b/libiberty/ChangeLog @@ -1,3 +1,7 @@ +2009-09-23 Matthew Gingell <gingell@adacore.com> + + * cplus-dem.c (ada_demangle): Ensure demangled is freed. + 2009-09-22 Ozkan Sezer <sezeroz@gmail.com> * choose-temp.c: Include unistd.h for mingw targets. diff --git a/libiberty/cplus-dem.c b/libiberty/cplus-dem.c index 41674675366..66285141ffa 100644 --- a/libiberty/cplus-dem.c +++ b/libiberty/cplus-dem.c @@ -984,7 +984,10 @@ ada_demangle (const char *mangled, int option ATTRIBUTE_UNUSED) goto Suppress; if (! changed) - return NULL; + { + free (demangled); + return NULL; + } else return demangled; |