[rtems-tools commit] covoar: Fix null pointer dereference

Joel Sherrill joel at rtems.org
Tue Mar 30 18:20:47 UTC 2021


Module:    rtems-tools
Branch:    master
Commit:    ff418df159400eb4d21ae46faaa258083e7d77c8
Changeset: http://git.rtems.org/rtems-tools/commit/?id=ff418df159400eb4d21ae46faaa258083e7d77c8

Author:    Alex White <alex.white at oarcorp.com>
Date:      Thu Feb 25 10:56:11 2021 -0600

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.

---

 tester/covoar/ExecutableInfo.cc | 9 ++++++---
 1 file 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 ) {



More information about the vc mailing list