Avoid memory leak in case of errors/exceptions in add_fix

This commit is contained in:
Richard Berger
2021-04-20 14:31:11 -04:00
parent fcf17a709e
commit a4e2255c87

View File

@ -964,13 +964,12 @@ void Modify::add_fix(int narg, char **arg, int trysuffix)
void Modify::add_fix(const std::string &fixcmd, int trysuffix)
{
auto args = utils::split_words(fixcmd);
char **newarg = new char*[args.size()];
int i=0;
std::vector<char *> newarg(args.size());
int i = 0;
for (const auto &arg : args) {
newarg[i++] = (char *)arg.c_str();
}
add_fix(args.size(),newarg,trysuffix);
delete[] newarg;
add_fix(args.size(),newarg.data(),trysuffix);
}