aboutsummaryrefslogtreecommitdiff
path: root/bfd/elf-attrs.c
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2010-11-05 13:02:09 +0000
committerJoseph Myers <joseph@codesourcery.com>2010-11-05 13:02:09 +0000
commite1a6b26358dae2f75ccb8b57466ad9fa6cf1ed2f (patch)
tree12f15defaf20eb80058c62d112733abfec8c9b13 /bfd/elf-attrs.c
parent7603b4ae74ed1762665b19cebac5d254d1154383 (diff)
downloadgdb-e1a6b26358dae2f75ccb8b57466ad9fa6cf1ed2f.zip
gdb-e1a6b26358dae2f75ccb8b57466ad9fa6cf1ed2f.tar.gz
gdb-e1a6b26358dae2f75ccb8b57466ad9fa6cf1ed2f.tar.bz2
* 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 e1893d3..569e846 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))
{