diff options
author | Ian Lance Taylor <iant@google.com> | 2013-01-04 19:00:06 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@gcc.gnu.org> | 2013-01-04 19:00:06 +0000 |
commit | ad8c59a1b9c665496a01871b5e21500d8945ac3f (patch) | |
tree | 78e3ea101be60bad4f19246b67a10237c11f3eaf /libiberty/simple-object-mach-o.c | |
parent | 918d445f1fe08cb05228e1b12052a55dfcd5401a (diff) | |
download | gcc-ad8c59a1b9c665496a01871b5e21500d8945ac3f.tar.gz |
re PR other/54800 (libiberty/simple-object-mach-o.c:704: possible optimisation ?)
PR other/54800
* simple-object-mach-o.c (simple_object_mach_o_segment): Don't
bother to zero out a buffer we are about to set anyhow.
From-SVN: r194914
Diffstat (limited to 'libiberty/simple-object-mach-o.c')
-rw-r--r-- | libiberty/simple-object-mach-o.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/libiberty/simple-object-mach-o.c b/libiberty/simple-object-mach-o.c index af5e4f9ca88..6fde6722bef 100644 --- a/libiberty/simple-object-mach-o.c +++ b/libiberty/simple-object-mach-o.c @@ -1,5 +1,5 @@ /* simple-object-mach-o.c -- routines to manipulate Mach-O object files. - Copyright 2010, 2011 Free Software Foundation, Inc. + Copyright 2010, 2011, 2013 Free Software Foundation, Inc. Written by Ian Lance Taylor, Google. This program is free software; you can redistribute it and/or modify it @@ -701,12 +701,13 @@ simple_object_mach_o_segment (simple_object_read *sobj, off_t offset, /* Otherwise, make a name like __segment,__section as per the convention in mach-o asm. */ name = &namebuf[0]; - memset (namebuf, 0, MACH_O_NAME_LEN * 2 + 2); memcpy (namebuf, (char *) sechdr + segname_offset, MACH_O_NAME_LEN); + namebuf[MACH_O_NAME_LEN] = '\0'; l = strlen (namebuf); namebuf[l] = ','; memcpy (namebuf + l + 1, (char *) sechdr + sectname_offset, MACH_O_NAME_LEN); + namebuf[l + 1 + MACH_O_NAME_LEN] = '\0'; } simple_object_mach_o_section_info (omr->is_big_endian, is_32, sechdr, |