summaryrefslogtreecommitdiff
path: root/ld
diff options
context:
space:
mode:
authorAlan Modra <amodra@bigpond.net.au>2010-03-10 22:44:00 +0000
committerAlan Modra <amodra@bigpond.net.au>2010-03-10 22:44:00 +0000
commit08142c5dce77f2741170d10debc6fa79f26cf6ab (patch)
treefba12b0280ff2059fa135cd54fb44dff24745e9e /ld
parent5e97bb2d785000f98f31cd3bf3f8bb2d0186ed32 (diff)
downloadbinutils-redhat-08142c5dce77f2741170d10debc6fa79f26cf6ab.tar.gz
PR ld/11367
* ldcref.c (handle_asneeded_cref): Correct copying of refs.
Diffstat (limited to 'ld')
-rw-r--r--ld/ChangeLog5
-rw-r--r--ld/ldcref.c10
2 files changed, 10 insertions, 5 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog
index 797989162d..9905b0a620 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,3 +1,8 @@
+2010-03-11 George Gensure <werkt0@gmail.com>
+
+ PR ld/11367
+ * ldcref.c (handle_asneeded_cref): Correct copying of refs.
+
2010-03-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* Makefile.am (ALL_EMULATIONS): Add eelf32_sparc_sol2.o,
diff --git a/ld/ldcref.c b/ld/ldcref.c
index c329d7d964..2f6a46caea 100644
--- a/ld/ldcref.c
+++ b/ld/ldcref.c
@@ -226,7 +226,7 @@ handle_asneeded_cref (bfd *abfd ATTRIBUTE_UNUSED,
entsize += cref_table.root.entsize;
c = (struct cref_hash_entry *) p;
for (r = c->refs; r != NULL; r = r->next)
- refsize += sizeof (struct cref_hash_entry);
+ refsize += sizeof (struct cref_ref);
}
}
@@ -258,8 +258,8 @@ handle_asneeded_cref (bfd *abfd ATTRIBUTE_UNUSED,
c = (struct cref_hash_entry *) p;
for (r = c->refs; r != NULL; r = r->next)
{
- memcpy (old_ref, r, sizeof (struct cref_hash_entry));
- old_ref = (char *) old_ref + sizeof (struct cref_hash_entry);
+ memcpy (old_ref, r, sizeof (struct cref_ref));
+ old_ref = (char *) old_ref + sizeof (struct cref_ref);
}
}
}
@@ -300,8 +300,8 @@ handle_asneeded_cref (bfd *abfd ATTRIBUTE_UNUSED,
c = (struct cref_hash_entry *) p;
for (r = c->refs; r != NULL; r = r->next)
{
- memcpy (r, old_ref, sizeof (struct cref_hash_entry));
- old_ref = (char *) old_ref + sizeof (struct cref_hash_entry);
+ memcpy (r, old_ref, sizeof (struct cref_ref));
+ old_ref = (char *) old_ref + sizeof (struct cref_ref);
}
}
}