[Bf-blender-cvs] [33249f69878] master: Fix T52533: Blender shuts down when rendering duplicated smoke domain

Sergey Sharybin noreply at git.blender.org
Mon Sep 4 13:15:32 CEST 2017


Commit: 33249f698780291a0de276d9df36c1d2473667e6
Author: Sergey Sharybin
Date:   Mon Sep 4 13:14:54 2017 +0200
Branches: master
https://developer.blender.org/rB33249f698780291a0de276d9df36c1d2473667e6

Fix T52533: Blender shuts down when rendering duplicated smoke domain

===================================================================

M	intern/cycles/render/image.cpp

===================================================================

diff --git a/intern/cycles/render/image.cpp b/intern/cycles/render/image.cpp
index 80ec77f8b4a..bb94b9bb82a 100644
--- a/intern/cycles/render/image.cpp
+++ b/intern/cycles/render/image.cpp
@@ -522,6 +522,10 @@ bool ImageManager::file_load_image(Image *img,
 	vector<StorageType> pixels_storage;
 	StorageType *pixels;
 	const size_t max_size = max(max(width, height), depth);
+	if(max_size == 0) {
+		/* Don't bother with invalid images. */
+		return false;
+	}
 	if(texture_limit > 0 && max_size > texture_limit) {
 		pixels_storage.resize(((size_t)width)*height*depth*4);
 		pixels = &pixels_storage[0];
@@ -529,6 +533,10 @@ bool ImageManager::file_load_image(Image *img,
 	else {
 		pixels = (StorageType*)tex_img.resize(width, height, depth);
 	}
+	if(pixels == NULL) {
+		/* Could be that we've run out of memory. */
+		return false;
+	}
 	bool cmyk = false;
 	const size_t num_pixels = ((size_t)width) * height * depth;
 	if(in) {



More information about the Bf-blender-cvs mailing list