JPEXS Free Flash Decompiler Issue Tracker

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 issuesList of issues

#258 AS1/2 chained assignments
Author: user focus
Date created:
Type: bug
Visibility: Everybody
Assigned to:
Labels: AS1/2
State: closed Help

Try to open attached file and decompile class "things". Interesting part at function move(): things.arr[0]._yscale=register0=(things.arr[0]._y + 20) / 3; things.arr[0]._xscale=register0; Originally: arr [0]._xscale = arr [0]._yscale = (arr [0]._y + 20) / 3;
Downloadship.swf (6 KiB)
user
PS: Please, ignore code itself, it can hurt your eyes.
admin
The "things." prefix is OK I think as arr is static variable. Register0 is there because it is chained assignment. This is how FFDec currently decompiles chained assignments. It is how it intended to be. To decompile it as things.arr[0]._xscale=things.arr[0]._yscale=(things.arr[0]._y + 20) / 3; I will need to find out whether the register is temporary only (not user elsewhere), and if it is, then remove it.
Title: AS2 Decompilation issue→AS1/2 chained assignments
user
I see.. would be great to see cleaner version in future, such code not so readable. And it will not compile back (register0 is not declared): things.as, Line 28 There is no property with the name 'register0'.
admin
State: new→opened
admin
version 1.7.0 was released this should be better, try it
State: opened→upgraded
user
Looks great now, thanks!
admin
State: upgraded→closed