about summary refs log tree commit diff
path: root/elf
diff options
context:
space:
mode:
Diffstat (limited to 'elf')
-rw-r--r--elf/dl-lookup.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/elf/dl-lookup.c b/elf/dl-lookup.c
index a1a964fa6a..44f91fca7d 100644
--- a/elf/dl-lookup.c
+++ b/elf/dl-lookup.c
@@ -134,10 +134,10 @@ _dl_lookup_symbol (const char *undef_name, const ElfW(Sym) **ref,
     {
       /* We could find no value for a strong reference.  */
       const char msg[] = "undefined symbol: ";
-      char buf[sizeof msg + strlen (undef_name)];
+      const size_t len = strlen (undef_name);
+      char buf[sizeof msg + len];
       memcpy (buf, msg, sizeof msg - 1);
-      memcpy (&buf[sizeof msg - 1], undef_name,
-	      sizeof buf - sizeof msg + 1);
+      memcpy (&buf[sizeof msg - 1], undef_name, len + 1);
       _dl_signal_error (0, reference_name, buf);
     }