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
diff options
context:
space:
mode:
authorSergey Sharybin <sergey.vfx@gmail.com>2016-01-23 23:31:36 +0300
committerSergey Sharybin <sergey.vfx@gmail.com>2016-01-23 23:31:36 +0300
commit398baef6c830fad7ec2ffb75801713775c348f7c (patch)
treed8d51dfc9b62569e950fe1fa91f2862d998c8159 /source/blender/render
parenta6aaaad9795e80af05e8281030107c32c6a1366b (diff)
Fix T47132: Cycles Rendering Tiles Indicator Limited to 16
Diffstat (limited to 'source/blender/render')
-rw-r--r--source/blender/render/intern/source/external_engine.c15
1 files changed, 9 insertions, 6 deletions
diff --git a/source/blender/render/intern/source/external_engine.c b/source/blender/render/intern/source/external_engine.c
index 5abad9ea01a..082c2ace241 100644
--- a/source/blender/render/intern/source/external_engine.c
+++ b/source/blender/render/intern/source/external_engine.c
@@ -415,15 +415,18 @@ rcti* RE_engine_get_current_tiles(Render *re, int *r_total_tiles, bool *r_needs_
/* Just in case we're using crazy network rendering with more
* slaves as BLENDER_MAX_THREADS.
*/
- if (tiles == tiles_static)
- tiles = MEM_mallocN(allocation_step * sizeof(rcti), "current engine tiles");
- else
- tiles = MEM_reallocN(tiles, (total_tiles + allocation_step) * sizeof(rcti));
-
allocation_size += allocation_step;
+ if (tiles == tiles_static) {
+ /* Can not realloc yet, tiles are pointing to a
+ * stack memory.
+ */
+ tiles = MEM_mallocN(allocation_size * sizeof(rcti), "current engine tiles");
+ }
+ else {
+ tiles = MEM_reallocN(tiles, allocation_size * sizeof(rcti));
+ }
*r_needs_free = true;
}
-
tiles[total_tiles] = pa->disprect;
if (pa->crop) {