StateTreeExecutionContext.cpp:1175行 调用了StartEvaluatorAndGlobalTasks,触发了GlobalTask的EnterState。但是随后的1191行 调用SelectState失败的话,会导致在1223行执行失败处理,随后整个Start流程结束,没有调用StopEvaluatorAndGlobalTasks把那些开启的GlobalTask结束掉。
重现步骤
- 创建一个新的StateTree,只包含一个Root State,把它的Enter Condition强制设置为false,这会让StateTree无法选中一个初始的进入状态,导致Start失败
- 给StateTree加一个Global Task
- 运行StateTree,可以打断点发现Global Task的ExitState没有执行
您好,这个问题5.7已经修复了,我可能得查下具体是哪个cl
麻烦查一下具体CL,感谢
不客气的,看起来这个提交被合并为一个很大的CL,不太好剥出来