diff options
-rw-r--r-- | binutils/ChangeLog | 4 | ||||
-rw-r--r-- | binutils/strings.c | 8 |
2 files changed, 10 insertions, 2 deletions
diff --git a/binutils/ChangeLog b/binutils/ChangeLog index 6716013..832e8ac 100644 --- a/binutils/ChangeLog +++ b/binutils/ChangeLog @@ -1,3 +1,7 @@ +2011-03-25 Michael Snyder <msnyder@vmware.com> + + * strings.c (print_strings): Plug memory leak. + 2011-03-25 Pierre Muller <muller@ics.u-strasbg.fr> Replace bfd_vma type and analog types by dwarf_vma and analogs. diff --git a/binutils/strings.c b/binutils/strings.c index 00cfb6d..4763512 100644 --- a/binutils/strings.c +++ b/binutils/strings.c @@ -1,6 +1,6 @@ /* strings -- print the strings of printable characters in files Copyright 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, - 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 + 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2011 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify @@ -549,7 +549,10 @@ print_strings (const char *filename, FILE *stream, file_ptr address, { c = get_char (stream, &address, &magiccount, &magic); if (c == EOF) - return; + { + free (buf); + return; + } if (! STRING_ISGRAPHIC (c)) /* Found a non-graphic. Try again starting with next char. */ goto tryline; @@ -638,6 +641,7 @@ print_strings (const char *filename, FILE *stream, file_ptr address, putchar ('\n'); } + free (buf); } static void |