[rtems commit] objectextendinformation.c: Ensure information-> object_blocks is not NULL

Joel Sherrill joel at rtems.org
Thu Apr 29 15:27:04 UTC 2021


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

Author:    Ryan Long <ryan.long at oarcorp.com>
Date:      Wed Mar 10 10:05:21 2021 -0500

objectextendinformation.c: Ensure information->object_blocks is not NULL

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.
        */



More information about the vc mailing list