diff options
author | Denys Vlasenko <vda.linux@googlemail.com> | 2018-12-10 15:12:58 +0100 |
---|---|---|
committer | Denys Vlasenko <vda.linux@googlemail.com> | 2018-12-10 15:12:58 +0100 |
commit | 8b4cf0dbb08a8a526045051b442e45cb2359b224 (patch) | |
tree | c6953681135c8266368609ba5f21604193d58b1a | |
parent | a7f1a3654041ed4b1d4716f71a8396977aca8223 (diff) | |
download | busybox-w32-8b4cf0dbb08a8a526045051b442e45cb2359b224.tar.gz busybox-w32-8b4cf0dbb08a8a526045051b442e45cb2359b224.tar.bz2 busybox-w32-8b4cf0dbb08a8a526045051b442e45cb2359b224.zip |
bc: optimize bc_vec_concat()
function old new delta
bc_vec_concat 71 66 -5
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
-rw-r--r-- | miscutils/bc.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/miscutils/bc.c b/miscutils/bc.c index afd5c8d0e..71022569e 100644 --- a/miscutils/bc.c +++ b/miscutils/bc.c | |||
@@ -1165,13 +1165,14 @@ static void bc_vec_string(BcVec *v, size_t len, const char *str) | |||
1165 | 1165 | ||
1166 | static void bc_vec_concat(BcVec *v, const char *str) | 1166 | static void bc_vec_concat(BcVec *v, const char *str) |
1167 | { | 1167 | { |
1168 | size_t len; | 1168 | size_t len, slen; |
1169 | 1169 | ||
1170 | if (v->len == 0) bc_vec_pushZeroByte(v); | 1170 | if (v->len == 0) bc_vec_pushZeroByte(v); |
1171 | 1171 | ||
1172 | len = v->len + strlen(str); | 1172 | slen = strlen(str); |
1173 | len = v->len + slen; | ||
1173 | 1174 | ||
1174 | if (v->cap < len) bc_vec_grow(v, len - v->len); | 1175 | if (v->cap < len) bc_vec_grow(v, slen); |
1175 | strcpy(v->v + v->len - 1, str); | 1176 | strcpy(v->v + v->len - 1, str); |
1176 | 1177 | ||
1177 | v->len = len; | 1178 | v->len = len; |