[Bf-blender-cvs] [89c8341] blender-v2.72-release: Fix BI viewport render crash happening with zero render border area
Sergey Sharybin
noreply at git.blender.org
Fri Oct 3 15:24:38 CEST 2014
Commit: 89c834143e0fabf21957dc0201761b0331c60d07
Author: Sergey Sharybin
Date: Mon Sep 29 20:51:00 2014 +0600
Branches: blender-v2.72-release
https://developer.blender.org/rB89c834143e0fabf21957dc0201761b0331c60d07
Fix BI viewport render crash happening with zero render border area
This is better to be backported to the 2.72.
===================================================================
M source/blender/render/intern/source/pipeline.c
===================================================================
diff --git a/source/blender/render/intern/source/pipeline.c b/source/blender/render/intern/source/pipeline.c
index 7e6d212..a4d4563 100644
--- a/source/blender/render/intern/source/pipeline.c
+++ b/source/blender/render/intern/source/pipeline.c
@@ -699,25 +699,27 @@ static void render_result_rescale(Render *re)
RR_USE_MEM,
RR_ALL_LAYERS);
- dst_rectf = re->result->rectf;
- if (dst_rectf == NULL) {
- RenderLayer *rl;
- rl = render_get_active_layer(re, re->result);
- if (rl != NULL) {
- dst_rectf = rl->rectf;
+ if (re->result != NULL) {
+ dst_rectf = re->result->rectf;
+ if (dst_rectf == NULL) {
+ RenderLayer *rl;
+ rl = render_get_active_layer(re, re->result);
+ if (rl != NULL) {
+ dst_rectf = rl->rectf;
+ }
}
- }
- scale_x = (float) result->rectx / re->result->rectx;
- scale_y = (float) result->recty / re->result->recty;
- for (x = 0; x < re->result->rectx; ++x) {
- for (y = 0; y < re->result->recty; ++y) {
- int src_x = x * scale_x,
- src_y = y * scale_y;
- int dst_index = y * re->result->rectx + x,
- src_index = src_y * result->rectx + src_x;
- copy_v4_v4(dst_rectf + dst_index * 4,
- src_rectf + src_index * 4);
+ scale_x = (float) result->rectx / re->result->rectx;
+ scale_y = (float) result->recty / re->result->recty;
+ for (x = 0; x < re->result->rectx; ++x) {
+ for (y = 0; y < re->result->recty; ++y) {
+ int src_x = x * scale_x,
+ src_y = y * scale_y;
+ int dst_index = y * re->result->rectx + x,
+ src_index = src_y * result->rectx + src_x;
+ copy_v4_v4(dst_rectf + dst_index * 4,
+ src_rectf + src_index * 4);
+ }
}
}
}
More information about the Bf-blender-cvs
mailing list