From 9609fded10590ebcc7e91af4da4b19695d416182 Mon Sep 17 00:00:00 2001 From: Mosder Date: Tue, 20 Oct 2026 16:37:15 +0200 Subject: fix: fixed some memory related bugs --- src/tester.c | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) (limited to 'src/tester.c') diff --git a/src/tester.c b/src/tester.c index 7723e97..06a938f 100644 --- a/src/tester.c +++ b/src/tester.c @@ -53,16 +53,19 @@ static Outputs suppressed = { #define nl printf("\n") static void print_center(const char *text, int color, char padding_char) { - size_t post_char_count = (RENDER_WIDTH - strlen(text)) / 2; - size_t pre_char_count = RENDER_WIDTH - post_char_count - strlen(text); - - for (size_t i = 1; i < pre_char_count; i++) - printf("%c", padding_char); - - print_color(color, " %s ", text); - - for (size_t i = 1; i < post_char_count; i++) - printf("%c", padding_char); + size_t len = strlen(text); + if (len + 2 > RENDER_WIDTH) { + print_color(color, "%s", text); + } + else { + size_t post_char_count = (RENDER_WIDTH - len) / 2; + size_t pre_char_count = RENDER_WIDTH - post_char_count - len; + for (size_t i = 1; i < pre_char_count; i++) + printf("%c", padding_char); + print_color(color, " %s ", text); + for (size_t i = 1; i < post_char_count; i++) + printf("%c", padding_char); + } nl; } -- cgit v1.2.3