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 /binutils/is-strip.c | |
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 'binutils/is-strip.c')
0 files changed, 0 insertions, 0 deletions