[PATCH] ReportsBase.cc: Add assert for member variables
Ryan Long
ryan.long at oarcorp.com
Wed Sep 29 14:29:55 UTC 2021
The uncoveredRanges and uncoveredBranch member variables are allocated
as a pair. They are both either NULL or not NULL. Coverity does not know
this though, so this assert is added to ensure they are not NULL before
being dereferenced.
CID 1503710: Dereference after null check
Closes #4428
---
tester/covoar/ReportsBase.cc | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/tester/covoar/ReportsBase.cc b/tester/covoar/ReportsBase.cc
index bc05037..219e5af 100644
--- a/tester/covoar/ReportsBase.cc
+++ b/tester/covoar/ReportsBase.cc
@@ -3,6 +3,7 @@
#include <errno.h>
#include <sys/stat.h>
#include <sys/types.h>
+#include <assert.h>
#include <iomanip>
#include <sstream>
@@ -231,6 +232,10 @@ void ReportsBase::WriteAnnotatedReport( const std::string& fileName )
continue;
}
+ // uncoveredRanges and uncoveredBranches are always allocated as a pair
+ // so both are NULL or both are not NULL.
+ assert( info.uncoveredRanges != NULL && info.uncoveredBranches != NULL );
+
// If uncoveredRanges and uncoveredBranches are empty, then everything
// must have been covered for this symbol. Just skip it.
if (
--
1.8.3.1
More information about the devel
mailing list