From: John Baldwin Date: Fri, 9 Nov 2018 19:44:20 +0000 (-0800) Subject: Fix unsigned overflow in minsyms reader. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=9c122c7f9c8260d2cceb1e8f29d69607531f43ba;p=binutils-gdb.git Fix unsigned overflow in minsyms reader. Use a ssize_t helper variable for the number of bytes to shrink the msymbols obstack rather than relying on unsigned overflow to shrink the size of the obstack. gdb/ChangeLog: * minsyms.c (minimal_symbol_reader::install): Fix unsigned overflow. --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index b6c612bd0b2..4a793640658 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2018-11-09 John Baldwin + + * minsyms.c (minimal_symbol_reader::install): Fix unsigned + overflow. + 2018-11-09 Hafiz Abid Qadeer * configure: Regenerate. diff --git a/gdb/minsyms.c b/gdb/minsyms.c index 4409e6f8b3a..0f854422e0f 100644 --- a/gdb/minsyms.c +++ b/gdb/minsyms.c @@ -1375,8 +1375,9 @@ minimal_symbol_reader::install () mcount = compact_minimal_symbols (msymbols, mcount, m_objfile); - obstack_blank_fast (&m_objfile->per_bfd->storage_obstack, - (mcount + 1 - alloc_count) * sizeof (struct minimal_symbol)); + ssize_t shrink_bytes + = (mcount + 1 - alloc_count) * sizeof (struct minimal_symbol); + obstack_blank_fast (&m_objfile->per_bfd->storage_obstack, shrink_bytes); msymbols = (struct minimal_symbol *) obstack_finish (&m_objfile->per_bfd->storage_obstack);