aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2011-01-18 17:43:56 +0000
committerH.J. Lu <hjl.tools@gmail.com>2011-01-18 17:43:56 +0000
commit2b52916eef5b07a8651af45db0992936f98263d2 (patch)
tree21226492aab13d5ef461d8d076ee75c7b0672463
parente3949f17f39bb2cf78561541b0473cd93cb000cf (diff)
downloadbinutils-2b52916eef5b07a8651af45db0992936f98263d2.zip
binutils-2b52916eef5b07a8651af45db0992936f98263d2.tar.gz
binutils-2b52916eef5b07a8651af45db0992936f98263d2.tar.bz2
Reset dump_sects after processing each archive member.
2011-01-18 H.J. Lu <hongjiu.lu@intel.com> PR binutils/12408 * readelf.c (process_archive): Free and reset dump_sects after processing each archive member.
-rw-r--r--binutils/ChangeLog6
-rw-r--r--binutils/readelf.c7
2 files changed, 13 insertions, 0 deletions
diff --git a/binutils/ChangeLog b/binutils/ChangeLog
index 9287fda..4e62cdc 100644
--- a/binutils/ChangeLog
+++ b/binutils/ChangeLog
@@ -1,3 +1,9 @@
+2011-01-18 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR binutils/12408
+ * readelf.c (process_archive): Free and reset dump_sects
+ after processing each archive member.
+
2011-01-11 Andreas Schwab <schwab@redhat.com>
* readelf.c (print_symbol): Handle symbol characters as unsigned.
diff --git a/binutils/readelf.c b/binutils/readelf.c
index a9f271d..abc251a 100644
--- a/binutils/readelf.c
+++ b/binutils/readelf.c
@@ -12640,6 +12640,13 @@ process_archive (char * file_name, FILE * file, bfd_boolean is_thin_archive)
ret |= process_object (qualified_name, file);
}
+ if (dump_sects != NULL)
+ {
+ free (dump_sects);
+ dump_sects = NULL;
+ num_dump_sects = 0;
+ }
+
free (qualified_name);
}