envy24control: fix file descriptor leaks in profiles

File descriptors were leaked when "Save active profile" was pressed. Add
the missing calls to close.

Signed-off-by: Andreas Persson <andreasp56@outlook.com>
This commit is contained in:
Andreas Persson 2025-03-29 08:37:01 +01:00
parent 5eaadd15bd
commit 262b5f1f53

View file

@ -1144,13 +1144,16 @@ int save_restore(const char * const operation, const int profile_number, const i
fprintf(stderr, "Cannot save settings for card '%d' in profile '%d'.\n", card_number, profile_number);
return -errno;
}
close(res);
unlink(cfgfile);
} else {
close(res);
if ((res = open(cfgfile, O_RDWR | 0400000 /* O_NOFOLLOW */, FILE_CREA_MODE)) < 0) {
fprintf(stderr, "Cannot open configuration file '%s' for writing.\n", cfgfile);
fprintf(stderr, "Cannot save settings for card '%d' in profile '%d'.\n", card_number, profile_number);
return -errno;
}
close(res);
}
res = save_profile(profile_number, card_number, profile_name, cfgfile);
} else if (!strcmp(operation, ALSACTL_OP_RESTORE)) {