[Bf-blender-cvs] [f606263] master: Fix crash in blenderplayer when scrubbing off screen.
Antony Riakiotakis
noreply at git.blender.org
Thu May 21 17:37:21 CEST 2015
Commit: f6062638c15754a7a88cc4f97fe2e656c73e6871
Author: Antony Riakiotakis
Date: Thu May 21 17:37:11 2015 +0200
Branches: master
https://developer.blender.org/rBf6062638c15754a7a88cc4f97fe2e656c73e6871
Fix crash in blenderplayer when scrubbing off screen.
Was cache referencing deleted or NULL items.
Reported by Kopias on irc
===================================================================
M source/blender/windowmanager/intern/wm_playanim.c
===================================================================
diff --git a/source/blender/windowmanager/intern/wm_playanim.c b/source/blender/windowmanager/intern/wm_playanim.c
index 81e0b0e..c2594cc 100644
--- a/source/blender/windowmanager/intern/wm_playanim.c
+++ b/source/blender/windowmanager/intern/wm_playanim.c
@@ -1154,10 +1154,10 @@ static char *wm_main_playanim_intern(int argc, const char **argv)
/* really basic memory conservation scheme. Keep frames in a fifo queue */
node = inmempicsbase.last;
- while (added_images > PLAY_FRAME_CACHE_MAX) {
+ while (node && added_images > PLAY_FRAME_CACHE_MAX) {
PlayAnimPict *pic = node->data;
- if (pic->ibuf != ibuf) {
+ if (pic->ibuf && pic->ibuf != ibuf) {
LinkData *node_tmp;
IMB_freeImBuf(pic->ibuf);
pic->ibuf = NULL;
@@ -1281,6 +1281,9 @@ static char *wm_main_playanim_intern(int argc, const char **argv)
#endif
BLI_freelistN(&picsbase);
+
+ BLI_freelistN(&inmempicsbase);
+ added_images = 0;
#if 0 // XXX25
free_blender();
#else
More information about the Bf-blender-cvs
mailing list