ソースを参照

Fix global variables not being able to be used inside of a foreach$ loop.

Jeff Hutchinson 6 年 前
コミット
2bf3c8384c
1 ファイル変更4 行追加1 行削除
  1. 4 1
      Engine/source/console/codeInterpreter.cpp

+ 4 - 1
Engine/source/console/codeInterpreter.cpp

@@ -2898,7 +2898,10 @@ OPCodeReturn CodeInterpreter::op_iter_begin(U32 &ip)
 
    IterStackRecord& iter = iterStack[_ITER];
 
-   iter.mVariable = gEvalState.getCurrentFrame().add(varName);
+   if (varName[0] == '$')
+      iter.mVariable = gEvalState.globalVars.add(varName);
+   else
+      iter.mVariable = gEvalState.getCurrentFrame().add(varName);
 
    if (iter.mIsStringIter)
    {