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/source
diff options
context:
space:
mode:
authorBrecht Van Lommel <brechtvanlommel@pandora.be>2011-12-17 02:45:29 +0400
committerBrecht Van Lommel <brechtvanlommel@pandora.be>2011-12-17 02:45:29 +0400
commit6f24642a2d5ff7754cf15c3cf21a89e2db54555d (patch)
tree2ebe728dfb377a9b6187adb37c222f55330aa3cb /source
parentc82fdb8e4189e6092c9c428d8540c01d677b6c54 (diff)
Fix #27847: sequencer scene strip rendering crash, due to use of freed
RenderResult.rect. Sergey did all the work to track this down, I'm just committing a slighty different fix.
Diffstat (limited to 'source')
-rw-r--r--source/blender/blenkernel/intern/image.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/source/blender/blenkernel/intern/image.c b/source/blender/blenkernel/intern/image.c
index fb734ea4f3d..7c2542b33be 100644
--- a/source/blender/blenkernel/intern/image.c
+++ b/source/blender/blenkernel/intern/image.c
@@ -2277,7 +2277,10 @@ static ImBuf *image_get_render_result(Image *ima, ImageUser *iuser, void **lock_
ibuf->x= rres.rectx;
ibuf->y= rres.recty;
- if(ibuf->rect_float!=rectf || rect) /* ensure correct redraw */
+ /* free rect buffer if float buffer changes, so it can be recreated with
+ the updated result, and also in case we got byte buffer from sequencer,
+ so we don't keep reference to freed buffer */
+ if(ibuf->rect_float!=rectf || rect || !rectf)
imb_freerectImBuf(ibuf);
if(rect)