aboutsummaryrefslogtreecommitdiff
path: root/binutils
diff options
context:
space:
mode:
Diffstat (limited to 'binutils')
-rw-r--r--binutils/ChangeLog7
-rw-r--r--binutils/ieee.c2
-rw-r--r--binutils/readelf.c9
3 files changed, 14 insertions, 4 deletions
diff --git a/binutils/ChangeLog b/binutils/ChangeLog
index b0a5b1b..44c56b5 100644
--- a/binutils/ChangeLog
+++ b/binutils/ChangeLog
@@ -1,3 +1,10 @@
+2015-04-24 Nick Clifton <nickc@redhat.com>
+
+ PR 18313
+ * ieee.c (ieee_read_cxx_class): Initialise the varargs variable.
+ * readelf.c (uncompress_section_contents): Zero initialise the
+ zstream structure.
+
2015-04-23 H.J. Lu <hongjiu.lu@intel.com>
PR binutils/18209
diff --git a/binutils/ieee.c b/binutils/ieee.c
index e93fcaa..a0d69d1 100644
--- a/binutils/ieee.c
+++ b/binutils/ieee.c
@@ -2954,7 +2954,7 @@ ieee_read_cxx_class (struct ieee_info *info, const bfd_byte **pp,
{
debug_type return_type;
const debug_type *arg_types;
- bfd_boolean varargs;
+ bfd_boolean varargs = FALSE;
if (debug_get_type_kind (dhandle, pv->type)
!= DEBUG_KIND_FUNCTION)
diff --git a/binutils/readelf.c b/binutils/readelf.c
index 1533806..dfa5c0b 100644
--- a/binutils/readelf.c
+++ b/binutils/readelf.c
@@ -12067,9 +12067,12 @@ uncompress_section_contents (unsigned char **buffer,
/* It is possible the section consists of several compressed
buffers concatenated together, so we uncompress in a loop. */
- strm.zalloc = NULL;
- strm.zfree = NULL;
- strm.opaque = NULL;
+ /* PR 18313: The state field in the z_stream structure is supposed
+ to be invisible to the user (ie us), but some compilers will
+ still complain about it being used without initialisation. So
+ we first zero the entire z_stream structure and then set the fields
+ that we need. */
+ memset (& strm, 0, sizeof strm);
strm.avail_in = compressed_size - header_size;
strm.next_in = (Bytef *) compressed_buffer + header_size;
strm.avail_out = uncompressed_size;