diff options
author | Nick Clifton <nickc@redhat.com> | 2014-04-24 11:15:43 +0100 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2014-04-24 11:15:43 +0100 |
commit | 3714081cb37fc60f3262b4c64e81539eb4f3592f (patch) | |
tree | e37b6d8173cc89d089cddb5fa6f690c5a9fc0418 /bfd/ChangeLog | |
parent | 2a87f7b84f1a3d101a19d7008802172ff50596e5 (diff) | |
download | gdb-3714081cb37fc60f3262b4c64e81539eb4f3592f.zip gdb-3714081cb37fc60f3262b4c64e81539eb4f3592f.tar.gz gdb-3714081cb37fc60f3262b4c64e81539eb4f3592f.tar.bz2 |
Fix PE/COFF resource merging problems. There were two issues:
1. Strings (and then resource data) must follow immediately after
the end of the tables.
2. Units of resource data must be 8-byte aligned.
PR ld/16807
* peXXigen.c (struct rsrc_regions): New structure.
(rsrc_print_resource_directory): Use new structure. Include
offset of directory in listing.
(rsrc_print_resource_entry): Likewise.
(rsrc_print_section): Likewise.
(rsrc_count_entries): Do not increment sizeof_strings or
sizeof_leaves.
(rsrc_count_directory): Do not increment sizeof_tables.
(rsrc_compute_region_sizes): New function.
(rsrc_write_leaf): Maintain 8-byte alignment for resource data.
(rsrc_process_section): Compute size of regions after merging
entries.
Diffstat (limited to 'bfd/ChangeLog')
-rw-r--r-- | bfd/ChangeLog | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 89c496f..cd439b1 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,19 @@ +2014-04-24 Nick Clifton <nickc@redhat.com> + + PR ld/16807 + * peXXigen.c (struct rsrc_regions): New structure. + (rsrc_print_resource_directory): Use new structure. Include + offset of directory in listing. + (rsrc_print_resource_entry): Likewise. + (rsrc_print_section): Likewise. + (rsrc_count_entries): Do not increment sizeof_strings or + sizeof_leaves. + (rsrc_count_directory): Do not increment sizeof_tables. + (rsrc_compute_region_sizes): New function. + (rsrc_write_leaf): Maintain 8-byte alignment for resource data. + (rsrc_process_section): Compute size of regions after merging + entries. + 2014-04-23 Alan Modra <amodra@gmail.com> PR ld/16787 |