From 801f6f3fb6c7a87b689c4c4c478ebb62523931b5 Mon Sep 17 00:00:00 2001 From: Joseph Hunkeler Date: Thu, 30 Apr 2026 09:45:15 -0400 Subject: init: clean up on error --- src/lib/core/ini.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'src/lib') diff --git a/src/lib/core/ini.c b/src/lib/core/ini.c index b4674e8..3c0377f 100644 --- a/src/lib/core/ini.c +++ b/src/lib/core/ini.c @@ -633,6 +633,7 @@ struct INIFILE *ini_open(const char *filename) { strip(section_name); if (ini_section_create(&ini, section_name)) { SYSERROR("unable to create section: %s", section_name); + guard_free(section_name); ini_free(&ini); return NULL; } @@ -652,7 +653,7 @@ struct INIFILE *ini_open(const char *filename) { continue; } - char *operator = strchr(line, '='); + const char *operator = strchr(line, '='); // a value continuation line if (multiline_data && (startswith(line, " ") || startswith(line, "\t"))) { @@ -660,7 +661,7 @@ struct INIFILE *ini_open(const char *filename) { } if (operator) { - size_t key_len = operator - line; + const size_t key_len = operator - line; memset(key, 0, key_size); strncpy(key, line, key_len); -- cgit