changeset 6410:200edfa98911

cppcheck: nullPointerOutOfMemory
author Alain Mazy <am@orthanc.team>
date Thu, 13 Nov 2025 06:32:48 +0100
parents c305e6e2bf08
children 98964246e23e
files OrthancFramework/Sources/Images/PamReader.cpp OrthancServer/Resources/RunCppCheck.sh
diffstat 2 files changed, 10 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/OrthancFramework/Sources/Images/PamReader.cpp	Thu Nov 13 06:29:37 2025 +0100
+++ b/OrthancFramework/Sources/Images/PamReader.cpp	Thu Nov 13 06:32:48 2025 +0100
@@ -207,8 +207,17 @@
     if (enforceAligned_)
     {
       if (alignedImageBuffer_ != NULL)
+      {
         free(alignedImageBuffer_);
+      }
+
       alignedImageBuffer_ = malloc(pitch * height);
+      
+      if (alignedImageBuffer_ == NULL)
+      {
+        throw OrthancException(ErrorCode_NotEnoughMemory);
+      }
+      
       memcpy(alignedImageBuffer_, &content_[offset], pitch* height);
       content_ = "";
       AssignWritable(format, width, height, pitch, alignedImageBuffer_);
--- a/OrthancServer/Resources/RunCppCheck.sh	Thu Nov 13 06:29:37 2025 +0100
+++ b/OrthancServer/Resources/RunCppCheck.sh	Thu Nov 13 06:32:48 2025 +0100
@@ -1,5 +1,5 @@
 #!/bin/bash
-
+# note: this script was last tuned to run with cppcheck v2.17.1
 set -ex
 
 CPPCHECK=cppcheck
@@ -65,13 +65,10 @@
 EOF
 
 
-# TODO: re-enable nullPointerOutOfMemory
-
 ${CPPCHECK} -j 8 --enable=all --quiet --std=c++11 \
             --suppress=missingIncludeSystem \
             --suppress=missingInclude \
             --suppress=useStlAlgorithm \
-            --suppress=nullPointerOutOfMemory \
             --check-level=exhaustive \
             --suppressions-list=/tmp/cppcheck-suppressions.txt \
             -DBOOST_HAS_DATE_TIME=1 \