Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/intern
diff options
context:
space:
mode:
authorSergey Sharybin <sergey.vfx@gmail.com>2016-09-22 18:30:31 +0300
committerSergey Sharybin <sergey.vfx@gmail.com>2016-09-22 18:30:31 +0300
commitd84c55f0fa4775f68af4ae7beba3fbeec4a98593 (patch)
tree03fbf713b73d34b07292a9513fea6a5ea69fac8e /intern
parent4e031073df3658f3bf9c807bfdfd70cdeca73102 (diff)
Fix T49417: Cycles crash - can't use 5 Gigabyte Tile EXR texture file
Was an integer overflow issue when calculating offsets.
Diffstat (limited to 'intern')
-rw-r--r--intern/cycles/render/image.cpp6
1 files changed, 2 insertions, 4 deletions
diff --git a/intern/cycles/render/image.cpp b/intern/cycles/render/image.cpp
index b387c2c2f98..7e24664b3fe 100644
--- a/intern/cycles/render/image.cpp
+++ b/intern/cycles/render/image.cpp
@@ -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,