JPEXS Free Flash Decompiler Issue Tracker

If you are looking for the decompiler itself, visit https://github.com/jindrapetrik/jpexs-decompiler

+ update 2020: WARNING - support of the decompiler is now VERY LIMITED. There are no active developers. This means we will NOT develop new features and/or fix most of bugs. We left the tracker running in case somebody from community would like to work on it. Sorry for the inconvenience.

List of issuesList of issues

#1207 Help. Need to understand these instructions
Author: user Alexa
Date created:
Type: question
Visibility: Everybody
Assigned to:
State: upgraded Help

i have a decompiled method. if(param1.hasOwnProperty("targetBlocks")) { _loc8_ = param1.targetBlocks as Object; var _loc16_:* = 0; var _loc15_:* = _loc8_; for(var _loc14_ in _loc8_) { .... _loc5_ is used within this foreach. but it is not set (not decompiled). in the trait window from the right i see these instructions: pushstring "targetBlocks" callproperty Qname(Namespace("http://adobe.com/AS3/2006/builtin"),"hasOwnProperty") 1 iffalse ofs01d6 getlocal_1 getproperty Multiname("targetBlocks",[PrivateNamespace("com.cubeflux.apps.jewelGame.levelData:LevelDat a"),ProtectedNamespace("com.cubeflux.apps.jewelGame.levelData:LevelData"),StaticProtectedN s("com.cubeflux.apps.jewelGame.levelData:LevelData"),StaticProtectedNs("Object"),PackageNa mespace("com.cubeflux.apps.jewelGame.levelData"),PackageInternalNs("com.cubeflux.apps.jewe lGame.levelData"),PrivateNamespace("FilePrivateNS:LevelData"),PackageNamespace(""),Namespa ce("http://adobe.com/AS3/2006/builtin")]) getlex Qname(PackageNamespace(""),"Object") astypelate coerce Qname(PackageNamespace(""),"Object") setlocal 8 pushbyte 0 setlocal 16 getlocal 8 setlocal 15 jump ofs01cf ofs0087:label getlocal 15 getlocal 16 nextname coerce_s dup setlocal 5 <--- set here setlocal 14 does it meen that _loc5_ is set to _loc14_ ?
developer
local5 and local14 is set to the same value .... coerce_s <= something is on the stack, and coerce it to "The String" dup <= duplicate "The String" on the stack setlocal 5 <= set local5 to the last value from the stack, which is the 2nd instance of "The String" setlocal 14 <= set local14 to the last value from the stack, which is the 1st instance of "The String" so local5 and local14 will be the same string
developer
State: new→upgraded
developer
instance = copy, reference.... they are the same string objects.
user
thank you!