summaryrefslogtreecommitdiff
path: root/bfd/peicode.h
diff options
context:
space:
mode:
Diffstat (limited to 'bfd/peicode.h')
-rw-r--r--bfd/peicode.h8
1 files changed, 4 insertions, 4 deletions
diff --git a/bfd/peicode.h b/bfd/peicode.h
index b3c1f29910..094f52d2ae 100644
--- a/bfd/peicode.h
+++ b/bfd/peicode.h
@@ -258,12 +258,12 @@ coff_swap_scnhdr_in (abfd, ext, in)
#ifndef COFF_NO_HACK_SCNHDR_SIZE
/* If this section holds uninitialized data and is from an object file
or from an executable image that has not initialized the field,
- or if the physical size is padded, use the virtual size (stored in
- s_paddr) instead. */
+ or if the image is an executable file and the physical size is padded,
+ use the virtual size (stored in s_paddr) instead. */
if (scnhdr_int->s_paddr > 0
&& (((scnhdr_int->s_flags & IMAGE_SCN_CNT_UNINITIALIZED_DATA) != 0
- && (! bfd_pe_executable_p (abfd) || scnhdr_int->s_size == 0))
- || scnhdr_int->s_size > scnhdr_int->s_paddr))
+ && (! bfd_pe_executable_p (abfd) || scnhdr_int->s_size == 0))
+ || (bfd_pe_executable_p (abfd) && scnhdr_int->s_size > scnhdr_int->s_paddr)))
{
scnhdr_int->s_size = scnhdr_int->s_paddr;