From 325c681d94281b21b30dc18dd604a54e418df607 Mon Sep 17 00:00:00 2001 From: "H.J. Lu" Date: Mon, 27 Apr 2009 13:59:43 +0000 Subject: bfd/ 2009-04-27 H.J. Lu * peXXigen.c (_bfd_XX_bfd_copy_private_bfd_data_common): Don't copy pe_opthdr. binutils/ 2009-04-27 H.J. Lu * objcopy.c (copy_object): Copy pe_opthdr before changing PE parameters. --- binutils/ChangeLog | 5 +++++ binutils/objcopy.c | 5 +++++ 2 files changed, 10 insertions(+) (limited to 'binutils') diff --git a/binutils/ChangeLog b/binutils/ChangeLog index 0e2d554..75af8f1 100644 --- a/binutils/ChangeLog +++ b/binutils/ChangeLog @@ -1,3 +1,8 @@ +2009-04-27 H.J. Lu + + * objcopy.c (copy_object): Copy pe_opthdr before changing PE + parameters. + 2009-04-24 Cary Coutant * dwarf.c (process_extended_line_op): Add DW_LNE_set_discriminator. diff --git a/binutils/objcopy.c b/binutils/objcopy.c index 3fe8741..7ef95c5 100644 --- a/binutils/objcopy.c +++ b/binutils/objcopy.c @@ -1491,6 +1491,11 @@ copy_object (bfd *ibfd, bfd *obfd) /* Set up PE parameters. */ pe_data_type *pe = pe_data (obfd); + /* Copy PE parameters before changing them. */ + if (ibfd->xvec->flavour == bfd_target_coff_flavour + && bfd_pei_p (ibfd)) + pe->pe_opthdr = pe_data (ibfd)->pe_opthdr; + if (pe_file_alignment != (bfd_vma) -1) pe->pe_opthdr.FileAlignment = pe_file_alignment; else -- cgit v1.1