If you are looking for the decompiler itself, visit https://github.com/jindrapetrik/jpexs-decompiler
NEW : We have got a new blog where we post some interesting SWF internals info.
List of issues#974 Assignment in if
Author: BeniBela
Date created:
Type: bug
Visibility: Everybody
Assigned to:
Labels: AS3Decompilation
State: closed
It is putting assignments in ifs which then do not compile:
if(_overwrite > 1 && this.cachedPT1 && _loc5_ = masterList[this.target] &&
_loc5_.length > 1)
{
if(overwriteManager.manageOverwrites(this,this.propTweenLookup,_loc5_,_overwrite))
{
init();
}
}
findpropstrict Qname(PackageNamespace(""),"Boolean")
getlocal_0
getproperty Qname(PackageNamespace(""),"vars")
getproperty
Multiname("onUpdate",[PrivateNamespace("*","227"),PackageNamespace(""),PackageNamespace("f
lash.utils"),StaticProtectedNs("com.greensock:TweenLite"),PackageNamespace("flash.display"
),PackageNamespace("com.greensock.core"),PackageNamespace("flash.events"),PackageNamespace
("com.greensock"),PrivateNamespace("*","237"),PackageInternalNs("com.greensock"),Namespace
("http://adobe.com/AS3/2006/builtin"),PackageNamespace("com.greensock.plugins"),ProtectedNa
mespace("com.greensock:TweenLite"),StaticProtectedNs("com.greensock.core:TweenCore"),Stati
cProtectedNs("Object")])
pushnull
equals
not
callproperty Qname(PackageNamespace(""),"Boolean") 1
initproperty Qname(ProtectedNamespace("com.greensock.core:TweenCore"),"_hasUpdate")
getlex Qname(ProtectedNamespace("com.greensock:TweenLite"),"_overwrittenProps")
iffalse ofs02c5
findpropstrict Qname(PackageNamespace(""),"killVars")
getlex Qname(ProtectedNamespace("com.greensock:TweenLite"),"_overwrittenProps")
callpropvoid Qname(PackageNamespace(""),"killVars") 1
getlocal_0
getproperty Qname(PackageNamespace(""),"cachedPT1")
pushnull
ifne ofs02c5
getlocal_0
pushfalse
pushfalse
callpropvoid Qname(PackageNamespace(""),"setEnabled") 2
ofs02c5:getlex Qname(ProtectedNamespace("com.greensock:TweenLite"),"_overwrite")
pushbyte 1
greaterthan
coerce_a
dup
iffalse ofs02d7
pop
getlocal_0
getproperty Qname(PackageNamespace(""),"cachedPT1")
coerce_a
ofs02d7:coerce_a
convert_b
dup
iffalse ofs0302
pop
getlex Qname(PackageNamespace(""),"masterList")
getlocal_0
getproperty Qname(PackageNamespace(""),"target")
getproperty
MultinameL([PrivateNamespace("*","227"),PackageNamespace(""),PackageNamespace("flash.utils
"),StaticProtectedNs("com.greensock:TweenLite"),PackageNamespace("flash.display"),PackageN
amespace("com.greensock.core"),PackageNamespace("flash.events"),PackageNamespace("com.gree
nsock"),PrivateNamespace("*","237"),PackageInternalNs("com.greensock"),Namespace("f5708698
caba8c51c7d1d2070ac5ad10"),PackageNamespace("com.greensock.plugins"),ProtectedNamespace("c
om.greensock:TweenLite"),StaticProtectedNs("com.greensock.core:TweenCore"),StaticProtected
Ns("Object")])
dup
setlocal 7
coerce Qname(PackageNamespace(""),"Array")
setlocal 5
getlocal 7
kill 7
jump ofs0300
setlocal 6
declocal_i 4
convert_i
setlocal 4
urshift
getlocal_3
ofs0300:coerce_a
convert_b
ofs0302:dup
iffalse ofs030f
pop
getlocal 5
getproperty Qname(PackageNamespace(""),"length")
pushbyte 1
greaterthan
ofs030f:iffalse ofs0330
getlex Qname(PackageNamespace(""),"overwriteManager")
getlocal_0
getlocal_0
getproperty Qname(PackageNamespace(""),"propTweenLookup")
getlocal 5
getlex Qname(ProtectedNamespace("com.greensock:TweenLite"),"_overwrite")
callproperty
Multiname("manageOverwrites",[PrivateNamespace("*","227"),PackageNamespace(""),PackageName
space("flash.utils"),StaticProtectedNs("com.greensock:TweenLite"),PackageNamespace("flash.
display"),PackageNamespace("com.greensock.core"),PackageNamespace("flash.events"),PackageN
amespace("com.greensock"),PrivateNamespace("*","237"),PackageInternalNs("com.greensock"),N
amespace("http://adobe.com/AS3/2006/builtin"),PackageNamespace("com.greensock.plugins"),Pro
tectedNamespace("com.greensock:TweenLite"),StaticProtectedNs("com.greensock.core:TweenCore
"),StaticProtectedNs("Object")]) 4
iffalse ofs0330
findpropstrict Qname(ProtectedNamespace("com.greensock:TweenLite"),"init")
callpropvoid Qname(ProtectedNamespace("com.greensock:TweenLite"),"init") 0
ofs0330:getlocal_0
pushtrue
setproperty Qname(PackageNamespace(""),"initted")
returnvoid
Pleases attach your swf file.
"do not compile": where? in ffdec or in the official compiler?
In MXML
Does it compile this way? :
if(_overwrite > 1 && this.cachedPT1 && (_loc5_ = masterList[this.target]) &&
_loc5_.length > 1)
(assignment in brackets)
Seems so
I am sorry for letting you wait so much without an answer and I don't think it is now
(after flash shutdown) even relevant, but
this seems to be fixed in current version (or earlier),
I am closing this issue.
State: new→closed