[PATCH v1 3/4] objectextendinformation.c: Ensure information->object_blocks is not NULL

Ryan Long ryan.long at oarcorp.com
Fri May 28 19:11:24 UTC 2021


CID 26033: Dereference after null check in _Objects_Extend_information().

Closes #4326
---
 cpukit/score/src/objectextendinformation.c | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/cpukit/score/src/objectextendinformation.c b/cpukit/score/src/objectextendinformation.c
index 9796eb9..c669301 100644
--- a/cpukit/score/src/objectextendinformation.c
+++ b/cpukit/score/src/objectextendinformation.c
@@ -171,6 +171,17 @@ Objects_Maximum _Objects_Extend_information(
 
     if ( old_maximum > extend_count ) {
       /*
+       * Coverity thinks there is a way for this to be NULL (CID #26033).
+       * After much time spent analyzing this, no one has identified the
+       * conditions where this can actually occur. Adding this _Assert ensures
+       * that it is never NULL. If this assert is triggered, condition
+       * generating this case will have been identified and it can be revisted.
+       * This is being done out of an abundance of caution since we could have
+       * easily flagged this as a false positive and ignored it completely.
+       */
+      _Assert(information->object_blocks != NULL);
+
+      /*
        *  Copy each section of the table over. This has to be performed as
        *  separate parts as size of each block has changed.
        */
-- 
1.8.3.1



More information about the devel mailing list