Blame SOURCES/binutils-2.20.51.0.10-sec-merge-emit.patch

1ac4b7
*** ../binutils-2.20.51.0.10.orig/bfd/merge.c	2010-08-20 12:19:33.000000000 +0100
1ac4b7
--- bfd/merge.c	2010-08-20 12:18:01.000000000 +0100
1ac4b7
*************** sec_merge_emit (bfd *abfd, struct sec_me
1ac4b7
*** 307,312 ****
1ac4b7
--- 307,315 ----
1ac4b7
        len = -off & (entry->alignment - 1);
1ac4b7
        if (len != 0)
1ac4b7
  	{
1ac4b7
+ 	  /* We should never have an entry with an alignment
1ac4b7
+ 	     greater than the section's alignment.  */
1ac4b7
+ 	  BFD_ASSERT (len <= (bfd_size_type) (1 << alignment_power));
1ac4b7
  	  if (bfd_bwrite (pad, len, abfd) != len)
1ac4b7
  	    goto err;
1ac4b7
  	  off += len;
1ac4b7
*************** sec_merge_emit (bfd *abfd, struct sec_me
1ac4b7
*** 324,329 ****
1ac4b7
--- 327,333 ----
1ac4b7
    /* Trailing alignment needed?  */
1ac4b7
    off = sec->size - off;
1ac4b7
    if (off != 0
1ac4b7
+       && alignment_power
1ac4b7
        && bfd_bwrite (pad, off, abfd) != off)
1ac4b7
      goto err;
1ac4b7