Fix #32530: animation playback did not respect preview frame range if the current

frame was before the start frame.
This commit is contained in:
Brecht Van Lommel 2012-09-10 14:00:01 +00:00
parent c276ef6a26
commit bb3b3abe30

@ -1767,12 +1767,22 @@ void ED_screen_animation_timer(bContext *C, int redraws, int refresh, int sync,
sad->ar = CTX_wm_region(C);
/* if startframe is larger than current frame, we put currentframe on startframe.
* note: first frame then is not drawn! (ton) */
if (scene->r.sfra > scene->r.cfra) {
sad->sfra = scene->r.cfra;
scene->r.cfra = scene->r.sfra;
if (PRVRANGEON) {
if (scene->r.psfra > scene->r.cfra) {
sad->sfra = scene->r.cfra;
scene->r.cfra = scene->r.psfra;
}
else
sad->sfra = scene->r.cfra;
}
else {
if (scene->r.sfra > scene->r.cfra) {
sad->sfra = scene->r.cfra;
scene->r.cfra = scene->r.sfra;
}
else
sad->sfra = scene->r.cfra;
}
else
sad->sfra = scene->r.cfra;
sad->redraws = redraws;
sad->refresh = refresh;
sad->flag |= (enable < 0) ? ANIMPLAY_FLAG_REVERSE : 0;