From 0e58784224ede880e6201d23d3b280e378ccefb8 Mon Sep 17 00:00:00 2001 From: Nathan Scott Date: Fri, 5 Nov 2021 09:13:13 +1100 Subject: [PATCH] Fix memory leak on shutdown in new screen settings code. Also tidy up the calloc call parameters in the initial allocation of this pointer, thanks to @BenBE for noticing. --- Settings.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Settings.c b/Settings.c index e587537d..94b4003c 100644 --- a/Settings.c +++ b/Settings.c @@ -77,6 +77,7 @@ void Settings_delete(Settings* this) { for (unsigned int i = 0; this->screens[i]; i++) { free(this->screens[i]->name); free(this->screens[i]->fields); + free(this->screens[i]); } free(this->screens); } @@ -262,7 +263,7 @@ static void ScreenSettings_readFields(ScreenSettings* ss, Hashtable* columns, co } ScreenSettings* Settings_newScreen(Settings* this, const char* name, const char* line) { - ScreenSettings* ss = xCalloc(sizeof(ScreenSettings), 1); + ScreenSettings* ss = xCalloc(1, sizeof(ScreenSettings)); ss->name = xStrdup(name); ss->fields = xCalloc(LAST_PROCESSFIELD, sizeof(ProcessField)); ss->flags = 0;