[PATCH 1/9] FcStrPlus: optimize a little
We've already calculated the lengths of these strings, so re-use those
values to avoid having to rescan the strings multiple times.
Signed-off-by: Mike Frysinger <vapier@xxxxxxxxxx>
---
src/fcstr.c | 8 +++++---
1 files changed, 5 insertions(+), 3 deletions(-)
diff --git a/src/fcstr.c b/src/fcstr.c
index 8b94ecb..b712e5d 100644
--- a/src/fcstr.c
+++ b/src/fcstr.c
@@ -50,14 +50,16 @@ FcStrCopy (const FcChar8 *s)
FcChar8 *
FcStrPlus (const FcChar8 *s1, const FcChar8 *s2)
{
- int l = strlen ((char *)s1) + strlen ((char *) s2) + 1;
+ int s1l = strlen ((char *) s1);
+ int s2l = strlen ((char *) s2);
+ int l = s1l + s2l + 1;
FcChar8 *s = malloc (l);
if (!s)
return 0;
FcMemAlloc (FC_MEM_STRING, l);
- strcpy ((char *) s, (char *) s1);
- strcat ((char *) s, (char *) s2);
+ memcpy (s, s1, s1l);
+ memcpy (s + s1l, s2, s2l + 1);
return s;
}
--
1.7.8.4
_______________________________________________
Fontconfig mailing list
Fontconfig@xxxxxxxxxxxxxxxxxxxxx
http://lists.freedesktop.org/mailman/listinfo/fontconfig
[Fedora Users]
[Fedora Cloud]
[Kernel]
[Fedora Legacy]
[Fedora Packaging]
[Fedora Desktop]
[PAM]
[Red Hat Development]
[Red Hat 9]
[Gimp]
[Yosemite News]