From a164aa1ab6c23e068bb4c136609fc09a1347f990 Mon Sep 17 00:00:00 2001 From: Daniel Genrich Date: Sun, 22 Apr 2012 17:31:39 +0000 Subject: Bugfix [#30298] Fluid-Sytem does not work! (Part 2, Part 1 fixed by Brecht) Canceling fluid simulation did not work when speed was zero. --- intern/elbeem/intern/ntl_world.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/intern/elbeem/intern/ntl_world.cpp b/intern/elbeem/intern/ntl_world.cpp index 42ee94b2cf5..3b649c9f5b9 100644 --- a/intern/elbeem/intern/ntl_world.cpp +++ b/intern/elbeem/intern/ntl_world.cpp @@ -400,8 +400,8 @@ int ntlWorld::advanceSims(int framenum) bool done = false; bool allPanic = true; - // stop/quit, dont display/render - if(getElbeemState()==SIMWORLD_STOP) { + // stop/quit (abort), dont display/render + if(!isSimworldOk()) { return 1; } @@ -411,6 +411,9 @@ int ntlWorld::advanceSims(int framenum) // time stopped? nothing else to do... if( (*mpSims)[mFirstSim]->getFrameTime(framenum) <= 0.0 ){ done=true; allPanic=false; + + /* DG: Need to check for user cancel here (fix for [#30298]) */ + (*mpSims)[mFirstSim]->checkCallerStatus(FLUIDSIM_CBSTATUS_STEP, 0); } int gstate = 0; -- cgit v1.2.3