summaryrefslogtreecommitdiff
path: root/bfd/elf-attrs.c
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2010-11-05 13:02:08 +0000
committerJoseph Myers <joseph@codesourcery.com>2010-11-05 13:02:08 +0000
commit8448f8e91592a602c8a7bc60c7b45a2cdd30add7 (patch)
tree05eb66e296b1996015d2bf48a71502bb91e882d8 /bfd/elf-attrs.c
parentd67dc7e4004609e9f95c0c178c0499cc5845f6e3 (diff)
downloadbinutils-redhat-8448f8e91592a602c8a7bc60c7b45a2cdd30add7.tar.gz
* elf-attrs.c (_bfd_elf_merge_unknown_attribute_low,
_bfd_elf_merge_unknown_attribute_list): Correct test for matching string attributes.
Diffstat (limited to 'bfd/elf-attrs.c')
-rw-r--r--bfd/elf-attrs.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/bfd/elf-attrs.c b/bfd/elf-attrs.c
index e1893d38d9..569e846cc5 100644
--- a/bfd/elf-attrs.c
+++ b/bfd/elf-attrs.c
@@ -613,7 +613,7 @@ _bfd_elf_merge_unknown_attribute_low (bfd *ibfd, bfd *obfd, int tag)
/* Only pass on attributes that match in both inputs. */
if (in_attr[tag].i != out_attr[tag].i
- || in_attr[tag].s != out_attr[tag].s
+ || (in_attr[tag].s == NULL) != (out_attr[tag].s == NULL)
|| (in_attr[tag].s != NULL && out_attr[tag].s != NULL
&& strcmp (in_attr[tag].s, out_attr[tag].s) != 0))
{
@@ -673,7 +673,7 @@ _bfd_elf_merge_unknown_attribute_list (bfd *ibfd, bfd *obfd)
/* Only pass on attributes that match in both inputs. */
if (in_list->attr.i != out_list->attr.i
- || in_list->attr.s != out_list->attr.s
+ || (in_list->attr.s == NULL) != (out_list->attr.s == NULL)
|| (in_list->attr.s && out_list->attr.s
&& strcmp (in_list->attr.s, out_list->attr.s) != 0))
{