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#79 DoInitAction decompilation problem
Author: pepka
Date created:
Type: bug
Visibility: Everybody
Assigned to:
Labels: AS1/2Decompilation
State: closed
> What steps will reproduce the problem?
DoInitAction 233 in the attached file throws an error:
???? 24, 2013 1:29:57 PM com.jpexs.decompiler.flash.graph.Graph printGraph
SEVERE: error during printgraph
java.util.EmptyStackException
at java.util.Stack.peek(Unknown Source)
at java.util.Stack.pop(Unknown Source)
at com.jpexs.decompiler.flash.graph.Graph.printGraph(Graph.java:607)
at com.jpexs.decompiler.flash.graph.Graph.printGraph(Graph.java:1037)
...
> What is the expected output? What do you see instead?
The same tag decompiled in version 1.3.1:
class gs.plugins.TweenPlugin
{
function TweenPlugin()
{
this._tweens=[];
this._changeFactor=0;
}
function onInitTween($target, $value, $tween)
{
this.addTween($target,this.propName,$target[this.propName],$value,this.propName)
return true;
}
function addTween($object, $propName, $start, $end, $overwriteProp)
{
if(!($end==undefined))
{
register3=typeof($end)!="number"?$end.valueOf():$end-$start;
if(!(register3==0))
{
this._tweens.this._tweens.length=new
gs.utils.tween.TweenInfo($object,$propName,$start,register3,$overwriteProp||$propName);
}
}
}
...
But in 1.5.0u1 you get:
if(!_global.gs)
{
_global.gs=new Object();
}
if(!_global.gs.plugins)
{
_global.gs.plugins=new Object();
}
if(!gs.plugins.TweenPlugin)
{
}
Such a snippet of code is also present in other tags i. e. 234 despite not leading to
errors but wrong decompilation.
> What version of the product are you using? On what operating system?
1.5.0u1
> Please provide any additional information below. Attach the file you have problem with
if neccessary.
State: new→opened
Hi,
version 1.5.1 was released,
this bug should be fixed.
Try it and let me know.
State: opened→upgraded
Hi,
yes, this bug disappeaered. Thanks!
But I have mentioned another one with the same example - DoAction tag throws an exception.
Version is 1.5.2.
???? 07, 2013 6:17:30 PM com.jpexs.decompiler.flash.SWFInputStream readActionListAtPos
SEVERE: Disassembly exception
java.util.EmptyStackException
at java.util.Stack.peek(Unknown Source)
at java.util.Stack.pop(Unknown Source)
at
com.jpexs.decompiler.flash.action.swf4.ActionStartDrag.translate(ActionStartDrag.java:69)
at com.jpexs.decompiler.flash.action.Action.translate(Action.java:674)
at
com.jpexs.decompiler.flash.SWFInputStream.readActionListAtPos(SWFInputStream.java:1002)
at
com.jpexs.decompiler.flash.SWFInputStream.readActionListAtPos(SWFInputStream.java:1051)
at com.jpexs.decompiler.flash.SWFInputStream.readActionList(SWFInputStream.java:729)
at com.jpexs.decompiler.flash.tags.DoActionTag.getActions(DoActionTag.java:117)
at com.jpexs.decompiler.flash.tags.DoActionTag.getASMSource(DoActionTag.java:77)
at com.jpexs.decompiler.flash.action.gui.ActionPanel$1.run(ActionPanel.java:148)
PS
When I tried to compile the source it has requested project.properties file which is not
in the project on Google Code.
for the compilation problem: project.properties file is automatically generated in ant
compile task. FFDec can be compiled with Ant. Install ant, make sure it is in your system
path variable, then compile FFDec with command
ant compile
or better
ant build
which will also create .jar file
State: upgraded→opened
Thank you! I found it.
version 1.6.0 was released,
the startdrag issue should be fixed.
State: opened→upgraded
And it's fixed. Thanks!
State: upgraded→closed