diff options
author | Determinant <tederminant@gmail.com> | 2018-07-19 14:43:15 -0400 |
---|---|---|
committer | Determinant <tederminant@gmail.com> | 2018-07-19 14:43:15 -0400 |
commit | b4bf23c07601560d708fbdd7c20aca20b630c983 (patch) | |
tree | 021e31927feed92dc61df6b51c3e840471715650 /src/util.cpp | |
parent | a75778995a4e0742f244670e9cc02a56611ccfe0 (diff) |
clean up code; fix mem leak in util
Diffstat (limited to 'src/util.cpp')
-rw-r--r-- | src/util.cpp | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/src/util.cpp b/src/util.cpp index 7125598..7ef01a9 100644 --- a/src/util.cpp +++ b/src/util.cpp @@ -220,8 +220,7 @@ size_t Config::parse(int argc, char **argv) { SALTICIDAE_LOG_INFO("loaded configuration from %s", conf_fname.c_str()); size_t nopts = opts.size(); - struct option *longopts = (struct option *)malloc( - sizeof(struct option) * (nopts + 1)); + auto longopts = BoxObj<struct option[]>(new struct option[nopts + 1]); int ind; std::string shortopts; for (size_t i = 0; i < nopts; i++) @@ -238,7 +237,7 @@ size_t Config::parse(int argc, char **argv) { longopts[nopts] = {0, 0, 0, 0}; for (;;) { - int id = getopt_long(argc, argv, shortopts.c_str(), longopts, &ind); + int id = getopt_long(argc, argv, shortopts.c_str(), longopts.get(), &ind); if (id == -1) break; if (id == '?') |