mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-23 19:23:23 +01:00
Fix a use after free. Patch by Frits van Bommel.
llvm-svn: 119842
This commit is contained in:
parent
edef95dc56
commit
68135a728b
@ -765,6 +765,15 @@ void cl::ParseCommandLineOptions(int argc, char **argv,
|
||||
}
|
||||
}
|
||||
|
||||
// Now that we know if -debug is specified, we can use it.
|
||||
// Note that if ReadResponseFiles == true, this must be done before the
|
||||
// memory allocated for the expanded command line is free()d below.
|
||||
DEBUG(dbgs() << "Args: ";
|
||||
for (int i = 0; i < argc; ++i)
|
||||
dbgs() << argv[i] << ' ';
|
||||
dbgs() << '\n';
|
||||
);
|
||||
|
||||
// Free all of the memory allocated to the map. Command line options may only
|
||||
// be processed once!
|
||||
Opts.clear();
|
||||
@ -779,12 +788,6 @@ void cl::ParseCommandLineOptions(int argc, char **argv,
|
||||
free(*i);
|
||||
}
|
||||
|
||||
DEBUG(dbgs() << "Args: ";
|
||||
for (int i = 0; i < argc; ++i)
|
||||
dbgs() << argv[i] << ' ';
|
||||
dbgs() << '\n';
|
||||
);
|
||||
|
||||
// If we had an error processing our arguments, don't let the program execute
|
||||
if (ErrorParsing) exit(1);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user