* merge.c (sec_merge_emit): Do not zero pad sections that do not

have an alignment.
This commit is contained in:
Nick Clifton 2010-08-20 14:41:48 +00:00
parent 97b4be1cc0
commit 736cba80b3
2 changed files with 9 additions and 0 deletions

View File

@ -1,3 +1,8 @@
2010-08-20 Nick Clifton <nickc@redhat.com>
* merge.c (sec_merge_emit): Do not zero pad sections that do not
have an alignment.
2010-08-18 Pedro Alves <pedro@codesourcery.com>
PR corefile/8210

View File

@ -307,6 +307,9 @@ sec_merge_emit (bfd *abfd, struct sec_merge_hash_entry *entry)
len = -off & (entry->alignment - 1);
if (len != 0)
{
/* We should never have an entry with an alignment
greater than the section's alignment. */
BFD_ASSERT (len <= (bfd_size_type) (1 << alignment_power));
if (bfd_bwrite (pad, len, abfd) != len)
goto err;
off += len;
@ -324,6 +327,7 @@ sec_merge_emit (bfd *abfd, struct sec_merge_hash_entry *entry)
/* Trailing alignment needed? */
off = sec->size - off;
if (off != 0
&& alignment_power
&& bfd_bwrite (pad, off, abfd) != off)
goto err;