X-Git-Url: https://oss.titaniummirror.com/gitweb?p=msp430-binutils.git;a=blobdiff_plain;f=bfd%2Fsimple.c;fp=bfd%2Fsimple.c;h=9a8397f83e971159adc09ee031145d6a6bbae771;hp=1b92a05791c0741e30106417b5f753a1c1155464;hb=d5da4f291af551c0b8b79e1d4a9b173d60e5c10e;hpb=7b5ea4fcdf2819e070665ab5610f8b48e3867c10 diff --git a/bfd/simple.c b/bfd/simple.c index 1b92a05..9a8397f 100644 --- a/bfd/simple.c +++ b/bfd/simple.c @@ -1,5 +1,5 @@ /* simple.c -- BFD simple client routines - Copyright 2002, 2003, 2004, 2005, 2007 + Copyright 2002, 2003, 2004, 2005, 2007, 2008, 2009 Free Software Foundation, Inc. Contributed by MontaVista Software, Inc. @@ -109,7 +109,7 @@ simple_save_output_info (bfd *abfd ATTRIBUTE_UNUSED, asection *section, void *ptr) { - struct saved_output_info *output_info = ptr; + struct saved_output_info *output_info = (struct saved_output_info *) ptr; output_info[section->index].offset = section->output_offset; output_info[section->index].section = section->output_section; if ((section->flags & SEC_DEBUGGING) != 0 @@ -125,7 +125,7 @@ simple_restore_output_info (bfd *abfd ATTRIBUTE_UNUSED, asection *section, void *ptr) { - struct saved_output_info *output_info = ptr; + struct saved_output_info *output_info = (struct saved_output_info *) ptr; section->output_offset = output_info[section->index].offset; section->output_section = output_info[section->index].section; } @@ -171,7 +171,7 @@ bfd_simple_get_relocated_section_contents (bfd *abfd, bfd_size_type size = sec->rawsize ? sec->rawsize : sec->size; if (outbuf == NULL) - contents = bfd_malloc (amt); + contents = (bfd_byte *) bfd_malloc (amt); else contents = outbuf; @@ -186,6 +186,7 @@ bfd_simple_get_relocated_section_contents (bfd *abfd, /* Fill in the bare minimum number of fields for our purposes. */ memset (&link_info, 0, sizeof (link_info)); + link_info.output_bfd = abfd; link_info.input_bfds = abfd; link_info.input_bfds_tail = &abfd->link_next; @@ -209,7 +210,8 @@ bfd_simple_get_relocated_section_contents (bfd *abfd, data = NULL; if (outbuf == NULL) { - data = bfd_malloc (sec->size); + bfd_size_type amt = sec->rawsize > sec->size ? sec->rawsize : sec->size; + data = (bfd_byte *) bfd_malloc (amt); if (data == NULL) return NULL; outbuf = data; @@ -239,7 +241,7 @@ bfd_simple_get_relocated_section_contents (bfd *abfd, _bfd_generic_link_add_symbols (abfd, &link_info); storage_needed = bfd_get_symtab_upper_bound (abfd); - symbol_table = bfd_malloc (storage_needed); + symbol_table = (asymbol **) bfd_malloc (storage_needed); bfd_canonicalize_symtab (abfd, symbol_table); } else