From 9407be8ea8e1ac6c76a184ab59a0ce13f9d4d461 Mon Sep 17 00:00:00 2001
From: iceman1001 <iceman@iuse.se>
Date: Mon, 4 Jul 2022 22:10:23 +0200
Subject: [PATCH] fix overflow in print hex

---
 client/src/util.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/client/src/util.c b/client/src/util.c
index b38a28f6d..27a23c3e2 100644
--- a/client/src/util.c
+++ b/client/src/util.c
@@ -189,7 +189,8 @@ void hex_to_buffer(uint8_t *buf, const uint8_t *hex_data, const size_t hex_len,
     size_t max_len = (hex_len > hex_max_len) ? hex_max_len : hex_len;
 
     size_t i;
-    for (i = 0; i < max_len; ++i, tmp += 2 + spaces_between) {
+    for (i = 0; i < max_len && (tmp - tmp_base); ++i, tmp += 2 + spaces_between) {
+
         snprintf(tmp, hex_max_len - (tmp - tmp_base), (uppercase) ? "%02X" : "%02x", (unsigned int) hex_data[i]);
 
         for (size_t j = 0; j < spaces_between; j++)