diff options
author | Alex White <alex.white@oarcorp.com> | 2021-02-25 10:56:11 -0600 |
---|---|---|
committer | Joel Sherrill <joel@rtems.org> | 2021-03-30 13:15:58 -0500 |
commit | ff418df159400eb4d21ae46faaa258083e7d77c8 (patch) | |
tree | 03db082764862814645d882033215ab7bfa2066c | |
parent | coverage: Give coverage bars red background (diff) | |
download | rtems-tools-ff418df159400eb4d21ae46faaa258083e7d77c8.tar.bz2 |
covoar: Fix null pointer dereference
A null pointer dereference happens later in the program execution if
the files are cleaned up at the end of the ExecutableInfo constructor.
This change fixes the null pointer dereference.
-rw-r--r-- | tester/covoar/ExecutableInfo.cc | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/tester/covoar/ExecutableInfo.cc b/tester/covoar/ExecutableInfo.cc index 1e14721..2fcacf2 100644 --- a/tester/covoar/ExecutableInfo.cc +++ b/tester/covoar/ExecutableInfo.cc @@ -82,13 +82,16 @@ namespace Coverage { throw; } - debug.end(); - executable.end(); - executable.close(); + // Can't cleanup handles until the destructor because the information is + // referenced elsewhere. NOTE: This could cause problems from too many open + // file descriptors. } ExecutableInfo::~ExecutableInfo() { + debug.end(); + executable.end(); + executable.close(); } void ExecutableInfo::dumpCoverageMaps( void ) { |