diff --git a/client/src/util.c b/client/src/util.c
index dab5fef58..9f564d58f 100644
--- a/client/src/util.c
+++ b/client/src/util.c
@@ -454,6 +454,8 @@ char *sprint_bin(const uint8_t *data, const size_t len) {
 char *sprint_hex_ascii(const uint8_t *data, const size_t len) {
     static char buf[UTIL_BUFFER_SIZE_SPRINT + 20] = {0};
     memset(buf, 0x00, sizeof(buf));    
+
+    char *tmp = buf;
     size_t max_len = (len > 1010) ? 1010 : len;
 
     int ret = snprintf(buf, sizeof(buf) - 1, "%s| ", sprint_hex(data, max_len));
@@ -466,16 +468,17 @@ char *sprint_hex_ascii(const uint8_t *data, const size_t len) {
 
     while (i < max_len) {
         char c = data[i];
-        buf[pos + i]  = ((c < 32) || (c == 127)) ? '.' : 'c';
+        tmp[pos + i]  = ((c < 32) || (c == 127)) ? '.' : c;
         ++i;
     }
-
 out:
     return buf;
 }
 
 char *sprint_ascii_ex(const uint8_t *data, const size_t len, const size_t min_str_len) {
     static char buf[UTIL_BUFFER_SIZE_SPRINT] = {0};
+    memset(buf, 0x00, sizeof(buf));
+
     char *tmp = buf;
     size_t max_len = (len > 1010) ? 1010 : len;
     size_t i = 0;