Fix T49417: Cycles crash - can't use 5 Gigabyte Tile EXR texture file

Was an integer overflow issue when calculating offsets.
This commit is contained in:
Sergey Sharybin 2016-09-22 17:30:31 +02:00
parent 4e031073df
commit d84c55f0fa
Notes: blender-bot 2023-02-14 09:09:43 +01:00
Referenced by issue #49417, Cycles crash - can't use 5 Gigabyte Tile EXR texture file
1 changed files with 2 additions and 4 deletions

View File

@ -587,8 +587,7 @@ bool ImageManager::file_load_float_image(Image *img, ImageDataType type, device_
}
if(depth <= 1) {
int scanlinesize = width*components*sizeof(float);
size_t scanlinesize = ((size_t)width)*components*sizeof(float);
in->read_image(TypeDesc::FLOAT,
(uchar*)readpixels + (height-1)*scanlinesize,
AutoStride,
@ -696,8 +695,7 @@ bool ImageManager::file_load_half_image(Image *img, ImageDataType type, device_v
}
if(depth <= 1) {
int scanlinesize = width*components*sizeof(half);
size_t scanlinesize = ((size_t)width)*components*sizeof(half);
in->read_image(TypeDesc::HALF,
(uchar*)readpixels + (height-1)*scanlinesize,
AutoStride,