2.18.50.0.4

This commit is contained in:
Jakub Jelinek 2008-02-29 17:04:07 +00:00
parent 75edcc16f3
commit 3d6d961fe0
11 changed files with 65 additions and 12 deletions

View File

@ -1 +1 @@
binutils-2.18.50.0.3.tar.bz2
binutils-2.18.50.0.4.tar.bz2

View File

@ -0,0 +1,48 @@
2008-02-22 H.J. Lu <hongjiu.lu@intel.com>
PR ld/5788
* elflink.c (elf_create_symbuf): Correct buffer size and
position.
--- bfd/elflink.c 20 Feb 2008 17:42:35 -0000 1.297
+++ bfd/elflink.c 23 Feb 2008 00:02:05 -0000 1.298
@@ -6870,7 +6870,7 @@ elf_create_symbuf (bfd_size_type symcoun
Elf_Internal_Sym **ind, **indbufend, **indbuf;
struct elf_symbuf_symbol *ssym;
struct elf_symbuf_head *ssymbuf, *ssymhead;
- bfd_size_type i, shndx_count;
+ bfd_size_type i, shndx_count, total_size;
indbuf = bfd_malloc2 (symcount, sizeof (*indbuf));
if (indbuf == NULL)
@@ -6890,15 +6890,16 @@ elf_create_symbuf (bfd_size_type symcoun
if (ind[0]->st_shndx != ind[1]->st_shndx)
shndx_count++;
- ssymbuf = bfd_malloc ((shndx_count + 1) * sizeof (*ssymbuf)
- + (indbufend - indbuf) * sizeof (*ssymbuf));
+ total_size = ((shndx_count + 1) * sizeof (*ssymbuf)
+ + (indbufend - indbuf) * sizeof (*ssym));
+ ssymbuf = bfd_malloc (total_size);
if (ssymbuf == NULL)
{
free (indbuf);
return NULL;
}
- ssym = (struct elf_symbuf_symbol *) (ssymbuf + shndx_count);
+ ssym = (struct elf_symbuf_symbol *) (ssymbuf + shndx_count + 1);
ssymbuf->ssym = NULL;
ssymbuf->count = shndx_count;
ssymbuf->st_shndx = 0;
@@ -6916,7 +6917,9 @@ elf_create_symbuf (bfd_size_type symcoun
ssym->st_other = (*ind)->st_other;
ssymhead->count++;
}
- BFD_ASSERT ((bfd_size_type) (ssymhead - ssymbuf) == shndx_count);
+ BFD_ASSERT ((bfd_size_type) (ssymhead - ssymbuf) == shndx_count
+ && (((bfd_hostptr_t) ssym - (bfd_hostptr_t) ssymbuf)
+ == total_size));
free (indbuf);
return ssymbuf;

View File

@ -1,18 +1,19 @@
Summary: A GNU collection of binary utilities.
Name: binutils
Version: 2.18.50.0.3
Release: 2
Version: 2.18.50.0.4
Release: 1
License: GPLv3+
Group: Development/Tools
URL: http://sources.redhat.com/binutils
Source: ftp://ftp.kernel.org/pub/linux/devel/binutils/binutils-%{version}.tar.bz2
Patch1: binutils-2.18.50.0.3-ltconfig-multilib.patch
Patch2: binutils-2.18.50.0.3-ppc64-pie.patch
Patch3: binutils-2.18.50.0.3-place-orphan.patch
Patch4: binutils-2.18.50.0.3-ia64-lib64.patch
Patch5: binutils-2.18.50.0.3-build-fixes.patch
Patch6: binutils-2.18.50.0.3-symbolic-envvar-revert.patch
Patch7: binutils-2.18.50.0.3-version.patch
Patch1: binutils-2.18.50.0.4-ltconfig-multilib.patch
Patch2: binutils-2.18.50.0.4-ppc64-pie.patch
Patch3: binutils-2.18.50.0.4-place-orphan.patch
Patch4: binutils-2.18.50.0.4-ia64-lib64.patch
Patch5: binutils-2.18.50.0.4-build-fixes.patch
Patch6: binutils-2.18.50.0.4-symbolic-envvar-revert.patch
Patch7: binutils-2.18.50.0.4-version.patch
Patch8: binutils-2.18.50.0.4-bz5788.patch
Buildroot: %{_tmppath}/binutils-root
BuildRequires: texinfo >= 4.0, dejagnu, gettext, flex, bison
@ -65,6 +66,7 @@ to consider using libelf instead of BFD.
%patch5 -p0 -b .build-fixes~
%patch6 -p0 -b .symbolic-envvar-revert~
%patch7 -p0 -b .version~
%patch8 -p0 -b .bz5788~
# On ppc64 we might use 64K pages
sed -i -e '/#define.*ELF_COMMONPAGESIZE/s/0x1000$/0x10000/' bfd/elf*ppc.c
@ -215,7 +217,10 @@ fi
%{_infodir}/bfd*info*
%changelog
* Tue Feb 19 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 2.18.50.0.3-2
* Fri Feb 29 2008 Jakub Jelinek <jakub@redhat.com> 2.18.50.0.4-1
- update to 2.18.50.0.4
* Tue Feb 19 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> 2.18.50.0.3-2
- Autorebuild for GCC 4.3
* Wed Dec 12 2007 Jakub Jelinek <jakub@redhat.com> 2.18.50.0.3-1

View File

@ -1 +1 @@
4e0692b6ff63d51b7ae3529fabe290ce binutils-2.18.50.0.3.tar.bz2
163ca01262dc530f7bf8e83bc43e65ab binutils-2.18.50.0.4.tar.bz2