Free memory when Main::setup returns an error
This commit is contained in:
parent
d9e94fa0c3
commit
bd257153dc
2 changed files with 9 additions and 2 deletions
|
@ -136,8 +136,13 @@ int widechar_main(int argc, wchar_t **argv) {
|
|||
|
||||
Error err = Main::setup(argv_utf8[0], argc - 1, &argv_utf8[1]);
|
||||
|
||||
if (err != OK)
|
||||
if (err != OK) {
|
||||
for (int i = 0; i < argc; ++i) {
|
||||
delete[] argv_utf8[i];
|
||||
}
|
||||
delete[] argv_utf8;
|
||||
return 255;
|
||||
}
|
||||
|
||||
if (Main::start())
|
||||
os.run();
|
||||
|
|
|
@ -45,8 +45,10 @@ int main(int argc, char *argv[]) {
|
|||
getcwd(cwd, PATH_MAX);
|
||||
|
||||
Error err = Main::setup(argv[0], argc - 1, &argv[1]);
|
||||
if (err != OK)
|
||||
if (err != OK) {
|
||||
free(cwd);
|
||||
return 255;
|
||||
}
|
||||
|
||||
if (Main::start())
|
||||
os.run(); // it is actually the OS that decides how to run
|
||||
|
|
Loading…
Reference in a new issue