This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Problem setting the CONTENTS flag


On Fri, Apr 21, 2006 at 01:58:08PM +0100, Andrew STUBBS wrote:
> Hi all,
> 
> I have encountered an error setting the CONTENTS and LOAD flags with 
> relatively recent versions of objcopy/bfd.
> 

Could you please open a bug report with a simple testcase? This patch
should work.

Thanks.


H.J.
----
2006-04-21  H.J. Lu  <hongjiu.lu@intel.com>

	* elf.c (_bfd_elf_new_section_hook): Don't set section ELF type
	and flags if its BFD flags has been set.

--- bfd/elf.c.copy	2006-04-21 07:00:02.000000000 -0700
+++ bfd/elf.c	2006-04-21 07:32:26.000000000 -0700
@@ -2487,10 +2487,11 @@ _bfd_elf_new_section_hook (bfd *abfd, as
   bed = get_elf_backend_data (abfd);
   sec->use_rela_p = bed->default_use_rela_p;
 
-  /* When we read a file, we don't need section type and flags unless
-     it is a linker created section.  They will be overridden in
-     _bfd_elf_make_section_from_shdr anyway.  */
-  if (abfd->direction != read_direction
+  /* When we read a file or section BFD flags has been set, we don't
+     need section type and flags unless it is a linker created section.
+     They will be overridden in _bfd_elf_make_section_from_shdr
+     anyway.  */
+  if ((!sec->flags && abfd->direction != read_direction)
       || (sec->flags & SEC_LINKER_CREATED) != 0)
     {
       ssect = (*bed->get_sec_type_attr) (abfd, sec);


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]