# HG changeset patch # User Alain Mazy # Date 1778165522 -7200 # Node ID b9752ef08934dc9dd2eddda61f155f08e71b043d # Parent 7318f5f73ace2acda7e852fa62fc4a3bc6159167 cleanup diff -r 7318f5f73ace -r b9752ef08934 OrthancFramework/Sources/DicomParsing/Internals/DicomImageDecoder.cpp --- a/OrthancFramework/Sources/DicomParsing/Internals/DicomImageDecoder.cpp Thu May 07 16:24:20 2026 +0200 +++ b/OrthancFramework/Sources/DicomParsing/Internals/DicomImageDecoder.cpp Thu May 07 16:52:02 2026 +0200 @@ -632,7 +632,7 @@ if (static_cast(static_cast(frameEnd)) != frameEnd) { std::ostringstream errorMessage; - errorMessage << "ImageDecoder: frameEnd platform overflow (" << frameEnd << ")"; // can only happen on 32 bits + errorMessage << "ImageDecoder: frameEnd larger than 4GB, which is too large for Orthanc running in 32bits (" << frameEnd << ")"; // can only happen on 32 bits throw OrthancException(ErrorCode_BadFileFormat, errorMessage.str()); } diff -r 7318f5f73ace -r b9752ef08934 OrthancFramework/Sources/Images/ImageAccessor.cpp --- a/OrthancFramework/Sources/Images/ImageAccessor.cpp Thu May 07 16:24:20 2026 +0200 +++ b/OrthancFramework/Sources/Images/ImageAccessor.cpp Thu May 07 16:52:02 2026 +0200 @@ -236,7 +236,7 @@ if (static_cast(GetBytesPerPixel() * width) > static_cast(pitch) || static_cast(static_cast(size)) != size) { - throw OrthancException(ErrorCode_ParameterOutOfRange); + throw OrthancException(ErrorCode_ParameterOutOfRange, "Buffer larger than 4GB, which is too large for Orthanc running in 32bits"); } } @@ -264,7 +264,7 @@ if (static_cast(GetBytesPerPixel() * width) > static_cast(pitch) || static_cast(static_cast(size)) != size) { - throw OrthancException(ErrorCode_ParameterOutOfRange); + throw OrthancException(ErrorCode_ParameterOutOfRange, "Buffer larger than 4GB, which is too large for Orthanc running in 32bits"); } } diff -r 7318f5f73ace -r b9752ef08934 OrthancFramework/Sources/Images/JpegReader.cpp --- a/OrthancFramework/Sources/Images/JpegReader.cpp Thu May 07 16:24:20 2026 +0200 +++ b/OrthancFramework/Sources/Images/JpegReader.cpp Thu May 07 16:52:02 2026 +0200 @@ -81,7 +81,7 @@ try { - content.resize(pitch * cinfo.output_height); + content.resize(static_cast(totalSize)); } catch (...) { @@ -95,7 +95,7 @@ while (cinfo.output_scanline < cinfo.output_height) { jpeg_read_scanlines(&cinfo, buffer, 1); - memcpy(target, buffer[0], pitch); + memcpy(target, buffer[0], static_cast(pitch)); target += pitch; }