Fix the creation of index tables in 64-bit thin archives.

Resolves #915411
This commit is contained in:
Nick Clifton 2013-03-01 17:40:21 +00:00
parent 99379f5eec
commit f2a73fac2c
2 changed files with 32 additions and 1 deletions

View File

@ -0,0 +1,25 @@
*** ../binutils-2.23.52.0.1.orig/bfd/archive64.c 2013-03-01 17:20:39.873535502 +0000
--- bfd/archive64.c 2013-03-01 17:22:30.410538566 +0000
*************** bfd_elf64_archive_write_armap (bfd *arch
*** 210,218 ****
if (bfd_bwrite (buf, 8, arch) != 8)
return FALSE;
}
/* Add size of this archive entry */
! archive_member_file_ptr += (arelt_size (current)
! + sizeof (struct ar_hdr));
/* remember about the even alignment */
archive_member_file_ptr += archive_member_file_ptr % 2;
}
--- 210,220 ----
if (bfd_bwrite (buf, 8, arch) != 8)
return FALSE;
}
+
/* Add size of this archive entry */
! archive_member_file_ptr += sizeof (struct ar_hdr);
! if (! bfd_is_thin_archive (arch))
! archive_member_file_ptr += arelt_size (current);
/* remember about the even alignment */
archive_member_file_ptr += archive_member_file_ptr % 2;
}

View File

@ -17,7 +17,7 @@
Summary: A GNU collection of binary utilities Summary: A GNU collection of binary utilities
Name: %{?cross}binutils%{?_with_debug:-debug} Name: %{?cross}binutils%{?_with_debug:-debug}
Version: 2.23.52.0.1 Version: 2.23.52.0.1
Release: 1%{?dist} Release: 2%{?dist}
License: GPLv3+ License: GPLv3+
Group: Development/Tools Group: Development/Tools
URL: http://sources.redhat.com/binutils URL: http://sources.redhat.com/binutils
@ -40,6 +40,8 @@ Patch08: binutils-2.22.52.0.1-relro-on-by-default.patch
Patch09: binutils-2.22.52.0.1-export-demangle.h.patch Patch09: binutils-2.22.52.0.1-export-demangle.h.patch
# Disable checks that config.h has been included before system headers. BZ #845084 # Disable checks that config.h has been included before system headers. BZ #845084
Patch10: binutils-2.22.52.0.4-no-config-h-check.patch Patch10: binutils-2.22.52.0.4-no-config-h-check.patch
# Fix the creation of the index table in 64-bit thin archives.
Patch11: binutils-2.23.52.0.1-64-bit-thin-archives.patch
Provides: bundled(libiberty) Provides: bundled(libiberty)
@ -146,6 +148,7 @@ using libelf instead of BFD.
%endif %endif
%patch09 -p0 -b .export-demangle-h~ %patch09 -p0 -b .export-demangle-h~
%patch10 -p0 -b .no-config-h-check~ %patch10 -p0 -b .no-config-h-check~
%patch11 -p0 -b .64bit-thin-archives~
# We cannot run autotools as there is an exact requirement of autoconf-2.59. # We cannot run autotools as there is an exact requirement of autoconf-2.59.
@ -445,6 +448,9 @@ exit 0
%endif # %{isnative} %endif # %{isnative}
%changelog %changelog
* Fri Mar 01 2013 Nick Clifton <nickc@redhat.com> - 2.23.52.0.1-2
- Fix the creation of index tables in 64-bit thin archives. (#915411)
* Thu Feb 28 2013 Nick Clifton <nickc@redhat.com> - 2.23.52.0.1-1 * Thu Feb 28 2013 Nick Clifton <nickc@redhat.com> - 2.23.52.0.1-1
- Rebase on 2.23.51.0.1 release. (#916516) - Rebase on 2.23.51.0.1 release. (#916516)