From 6b7a2da599b044f4bafd7acd3d0936fd05c37741 Mon Sep 17 00:00:00 2001 From: Bastian Dehn Date: Thu, 26 Feb 2026 20:26:55 +0100 Subject: [PATCH] set all bits for dest zero --- src/rename.c | 35 ++++++++++++++++------------------- 1 file changed, 16 insertions(+), 19 deletions(-) diff --git a/src/rename.c b/src/rename.c index f73d7e9..60ccc46 100644 --- a/src/rename.c +++ b/src/rename.c @@ -5,10 +5,13 @@ char* escape(const char* src) { - size_t length = strlen(src); char* dest = malloc(sizeof(char) * STR_MAX_LENGTH); - int destcounter = 0; + if (dest == NULL) + return NULL; + memset(dest, 0, STR_MAX_LENGTH); + int destcounter = 0; + size_t length = strlen(src); for (size_t i = 0; i < length; i++) { switch(src[i]) { case SPACE: @@ -27,17 +30,15 @@ char* escape(const char* src) } } - dest[destcounter] = '\0'; length = strlen(dest) + 1; char* dest_tmp = realloc(dest, sizeof(char) * length); - if (dest_tmp == NULL) { free(dest); dest = NULL; return NULL; } - dest = dest_tmp; + return dest; } @@ -54,20 +55,20 @@ char* rename_point(const char* src) if (dest[i] != POINT) break; } - dest[length - point_count] = '\0'; + length = strlen(dest) + 1; char* dest_tmp = realloc(dest, sizeof(char) * length); - if (dest_tmp == NULL) { free(dest); dest = NULL; return NULL; } - dest = dest_tmp; + return dest; } + char* rename_lower(const char* src) { char* dest = rename_string(src); @@ -82,13 +83,13 @@ char* rename_lower(const char* src) char* rename_string(const char* src) { - size_t length = strlen(src); - int dest_count = 0; char* dest = malloc(sizeof(char) * STR_MAX_LENGTH); - if (dest == NULL) return NULL; + memset(dest, 0, STR_MAX_LENGTH); + int dest_count = 0; + size_t length = strlen(src); for (size_t i = 0; i < length; i++) { if (src[i] == SPACE) { dest[dest_count++] = '_'; @@ -125,29 +126,27 @@ char* rename_string(const char* src) } } - dest[dest_count] = '\0'; length = strlen(dest) + 1; char* dest_tmp = realloc(dest, sizeof(char) * length); - if (dest_tmp == NULL) { free(dest); dest = NULL; return NULL; } - dest = dest_tmp; + return dest; } char* rename_revert(const char* src) { size_t length = strlen(src); - int dest_count = 0; char* dest = malloc(sizeof(char) * STR_MAX_LENGTH); - if (dest == NULL) return NULL; + int dest_count = 0; + memset(dest, 0, STR_MAX_LENGTH); for (size_t i = 0; i < length; i++) { if (src[i] == '_') { dest[dest_count++] = SPACE; @@ -184,16 +183,14 @@ char* rename_revert(const char* src) } } - dest[dest_count] = '\0'; length = strlen(dest) + 1; char* dest_tmp = realloc(dest, sizeof(char) * length); - if (dest_tmp == NULL) { free(dest); dest = NULL; return NULL; } - dest = dest_tmp; + return dest; } \ No newline at end of file -- 2.47.3