diff options
author | Jim Blandy <jimb@codesourcery.com> | 2003-10-31 22:47:48 +0000 |
---|---|---|
committer | Jim Blandy <jimb@codesourcery.com> | 2003-10-31 22:47:48 +0000 |
commit | af425ae07ad31b16de5ca84bff750653d99f1c0f (patch) | |
tree | b2add567e74fc5c859dcf62df98e9520d8649f62 /gdb/elfread.c | |
parent | b01c9a38a9846d0dda93f15864f8cbe6616ef02b (diff) | |
download | gdb-af425ae07ad31b16de5ca84bff750653d99f1c0f.tar.gz |
* elfread.c (elf_symtab_read): Allocate correct number of tail
elements to sectinfo structure. (Fix from Woody LaRue.)
Diffstat (limited to 'gdb/elfread.c')
-rw-r--r-- | gdb/elfread.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/gdb/elfread.c b/gdb/elfread.c index 8c278107d37..9ac30aeeb9f 100644 --- a/gdb/elfread.c +++ b/gdb/elfread.c @@ -398,9 +398,17 @@ elf_symtab_read (struct objfile *objfile, int dynamic) = max (SECT_OFF_BSS (objfile), max (SECT_OFF_DATA (objfile), SECT_OFF_RODATA (objfile))); + + /* max_index is the largest index we'll + use into this array, so we must + allocate max_index+1 elements for it. + However, 'struct stab_section_info' + already includes one element, so we + need to allocate max_index aadditional + elements. */ size = (sizeof (struct stab_section_info) + (sizeof (CORE_ADDR) - * (max_index - 1))); + * max_index)); sectinfo = (struct stab_section_info *) xmmalloc (objfile->md, size); memset (sectinfo, 0, size); |