diff --git a/libs/UIX.DecompXml/Decompiler.Script.cs b/libs/UIX.DecompXml/Decompiler.Script.cs index a1fdd98..3ccd15d 100644 --- a/libs/UIX.DecompXml/Decompiler.Script.cs +++ b/libs/UIX.DecompXml/Decompiler.Script.cs @@ -224,6 +224,10 @@ partial class Decompiler switch (opCode) { + case OpCode.PushThis: + stack.Push(ThisExpression()); + break; + case OpCode.ConstructObject: case OpCode.ConstructObjectParam: var typeToCtor = _context.GetImportedType(instruction.Operands.First()); diff --git a/libs/UIX.DecompXml/Decompiler.cs b/libs/UIX.DecompXml/Decompiler.cs index 9a22006..dfac9b4 100644 --- a/libs/UIX.DecompXml/Decompiler.cs +++ b/libs/UIX.DecompXml/Decompiler.cs @@ -152,10 +152,6 @@ public partial class Decompiler stack.Push(null); break; - case OpCode.PushThis: - stack.Push(elemToInit); - break; - case OpCode.ConstructObject: var typeToCtor = _context.GetImportedType(instruction.Operands.ElementAt(0)); var xObj = new XElement(_context.GetXName(typeToCtor)); @@ -245,6 +241,7 @@ public partial class Decompiler break; case OpCode.ConstructObjectParam: + case OpCode.PushThis: case OpCode.MethodInvoke: case OpCode.MethodInvokePeek: case OpCode.MethodInvokeStatic: diff --git a/test/STYLES_decomp.uix b/test/STYLES_decomp.uix index a0a0aaa..8e1091d 100644 --- a/test/STYLES_decomp.uix +++ b/test/STYLES_decomp.uix @@ -672,6 +672,7 @@ +