From 078f0f511e59b47fb772588b240e3f6e943659ba Mon Sep 17 00:00:00 2001 From: Miroslav Lichvar Date: Wed, 24 Sep 2014 15:13:03 +0200 Subject: [PATCH] util: optimize UTI_RefidToString() --- util.c | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/util.c b/util.c index aedf2c9..7a39ffb 100644 --- a/util.c +++ b/util.c @@ -238,18 +238,18 @@ char * UTI_RefidToString(uint32_t ref_id) { unsigned int i, j, c; - char buf[5], *result; - - for (i = j = 0; i < 4; i++) { - c = (ref_id >> (24 - i * 8)) & 0xff; - if (isprint(c)) - buf[j++] = c; - } - - buf[j] = '\0'; + char *result; result = NEXT_BUFFER; - snprintf(result, BUFFER_LENGTH, "%s", buf); + + for (i = j = 0; i < 4 && i < BUFFER_LENGTH - 1; i++) { + c = (ref_id >> (24 - i * 8)) & 0xff; + if (isprint(c)) + result[j++] = c; + } + + result[j] = '\0'; + return result; }