From: Denys Vlasenko Date: Fri, 26 Feb 2016 13:56:18 +0000 (+0100) Subject: udhcp: trivial shrink X-Git-Tag: 1_25_0~122 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=5bec08cebd559c906eb94b8b957afb9f0b8db338;p=oweals%2Fbusybox.git udhcp: trivial shrink function old new delta dname_dec 337 332 -5 Signed-off-by: Denys Vlasenko --- diff --git a/networking/udhcp/domain_codec.c b/networking/udhcp/domain_codec.c index c1325d8be..05cdf51e9 100644 --- a/networking/udhcp/domain_codec.c +++ b/networking/udhcp/domain_codec.c @@ -42,7 +42,7 @@ char* FAST_FUNC dname_dec(const uint8_t *cstr, int clen, const char *pre) */ while (1) { /* note: "return NULL" below are leak-safe since - * dst isn't yet allocated */ + * dst isn't allocated yet */ const uint8_t *c; unsigned crtpos, retpos, depth, len; @@ -95,9 +95,8 @@ char* FAST_FUNC dname_dec(const uint8_t *cstr, int clen, const char *pre) if (!dst) { /* first pass? */ /* allocate dst buffer and copy pre */ unsigned plen = strlen(pre); - ret = dst = xmalloc(plen + len); - memcpy(dst, pre, plen); - dst += plen; + ret = xmalloc(plen + len); + dst = stpcpy(ret, pre); } else { dst[len - 1] = '\0'; break;