Fix memleak in rules-check.cc

This commit is contained in:
Ervin Hegedus 2024-03-27 11:45:36 +01:00
parent 39848e5564
commit 5b2404e44d
No known key found for this signature in database
GPG Key ID: 5FA5BC3F5EC41F61

View File

@ -41,6 +41,7 @@ int main(int argc, char **argv) {
if (*args == NULL) {
print_help(argv[0]);
delete rules;
return 0;
}
@ -50,6 +51,7 @@ int main(int argc, char **argv) {
const char *arg = *args;
std::string err;
int r;
bool need_free = false;
if (argFull.empty() == false) {
if (arg[strlen(arg)-1] == '\"') {
@ -72,6 +74,7 @@ int main(int argc, char **argv) {
if (argFull.empty() == false) {
arg = strdup(argFull.c_str());
need_free = true;
argFull.clear();
}
@ -81,6 +84,9 @@ int main(int argc, char **argv) {
} else {
r = rules->load(arg);
}
if(need_free == true && arg != nullptr) {
free((void*)arg);
}
if (r < 0) {
err.assign(rules->m_parserError.str());
rules->m_parserError.str("");