diff --git a/OpenSim/Region/ScriptEngine/YEngine/MMRScriptCodeGen.cs b/OpenSim/Region/ScriptEngine/YEngine/MMRScriptCodeGen.cs index 1a21a9572e..1e5cadce7a 100644 --- a/OpenSim/Region/ScriptEngine/YEngine/MMRScriptCodeGen.cs +++ b/OpenSim/Region/ScriptEngine/YEngine/MMRScriptCodeGen.cs @@ -2516,6 +2516,13 @@ namespace OpenSim.Region.ScriptEngine.Yengine } else { + if (curDeclFunc.fullName != "$globalvarinit()") + { + PushXMRInst(); + ilGen.Emit(curDeclFunc, OpCodes.Ldloc, curHeapSize); + ilGen.Emit(curDeclFunc, OpCodes.Stfld, heapUsedFieldInfo); + } + ilGen.Emit(stateStmt, OpCodes.Ldc_I4, index); // new state's index ilGen.Emit(stateStmt, OpCodes.Newobj, scriptChangeStateExceptionConstructorInfo); }