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

#216 field order
Author: developer honfika
Date created:
Type: question
Visibility: Everybody
Assigned to:
Labels: AS1/2
State: closed Help

The field order has changed since the last version. In 1.6.4u1: static var m_BlinkLength = 24; static var m_NumberBlink = true; static var m_BlinkSpeed = 4; static var m_Divider = 1; In 1.6.5: static var m_NumberBlink = true; static var m_Divider = 1; static var m_BlinkLength = 24; static var m_BlinkSpeed = 4; Why? They are not sorted neither in 1.6.4u1, nor in 1.6.5, but the order is diffrent. It would be great to have a deterministic field order, usually i compare the decopmiled files of the diffrent versions (to find bugs:)) Maybe you can sort them alphabetically.
user
In my opinion would be better to not sort them at all, but read them as they lay in bytecode preserving same order.
developer
Ok, but why is the order diffrent in v1.6.4u1 and v1.6.5? The source swf file is the same. (scripts\__Packages\WinLine.as)
Download100000.swf (1,368 KiB)
user
Yeah, this is not good, I just saying do not add alphabetical sorting, just fix this different order and keep original order at all.
admin
Different sort is there probably because class uses hashmap to store vars and hascode/equals method of some objects changed between the versions so it is sorted differently. In next release I will use List instead of HashMap, the ordering should stay same. Ordering of fields in AS2 in FFDec: 1) functions 2) static functions 3) vars 4) static vars In the future maybe I can keep original order in the file, but this will need a lot of changes.
State: new→opened
admin
version 1.6.5u1 was released fields order should be constant now
State: opened→upgraded
developer
thanks, it is the same i the previous 2 releases
admin
State: upgraded→closed