diff options
-rw-r--r-- | src/config-ini.c | 4 | ||||
-rw-r--r-- | src/redshift.c | 2 |
2 files changed, 6 insertions, 0 deletions
diff --git a/src/config-ini.c b/src/config-ini.c index 4541a0f..8c82d72 100644 --- a/src/config-ini.c +++ b/src/config-ini.c @@ -216,15 +216,19 @@ config_ini_free(config_ini_state_t *state) while (section != NULL) { config_ini_setting_t *setting = section->settings; + config_ini_section_t *section_prev = section; while (setting != NULL) { + config_ini_setting_t *setting_prev = setting; free(setting->name); free(setting->value); setting = setting->next; + free(setting_prev); } free(section->name); section = section->next; + free(section_prev); } } diff --git a/src/redshift.c b/src/redshift.c index af76e67..e4143fc 100644 --- a/src/redshift.c +++ b/src/redshift.c @@ -1089,6 +1089,8 @@ main(int argc, char *argv[]) } } + config_ini_free(&config_state); + switch (mode) { case PROGRAM_MODE_ONE_SHOT: case PROGRAM_MODE_PRINT: |