Version History
Here you can find the changelog of JPEXS Free Flash Decompiler since it was posted on our website on 2015-04-26.
The latest version is 20.1.0 and it was updated on soft112.com on 27 March, 2024.
See below the changes in each version:
version 20.1.0
posted on 2023-12-30
version 19.1.2
posted on 2023-10-16
### Fixed
- #2099 Smart number formatting always on
version 19.0.0
posted on 2023-10-01
### Added
- #1449 Updated Turkish translation
- #2070 SWF to XML format has new meta fields describing XML export major/minor version
(major = uncompatible change)
- #2070 forceWriteAsLong Tag internal attribute is now visible and editable
(including XML export), allows decide whether to write length in tag header as long
- #2073 Editing of frame count in SWF header (with warning that it won't update ShowFrame count)
- Show font AS linkage class in its name in the tree (besides font name)
- #2057 Show all assigned AS linkage classes in the item name (instead just one)
- Exporting ByteArrayRange in the raw editor with the Export button
- Export DefineFont4 to OpenType CFF file
- AS3 - Show `Embed` tag over asset classes (readonly)
- AS3 - Checkbox for exporting assets embedded using `Embed` (-exportembed in commandline)
- FLA export - AS3 - Using `Embed` tag for DefineBinaryData, images not extending BitmapData
- #2066 AS3 Support for api-versioned SWFs
- AS3 compound scripts (scripts containing multiple external definitions like compiled C code, etc.)
have special node per script (script_0, script_1, ...) which contains included classes and script initializer
- Show "Renaming identifiers" status on file opening with auto rename identifiers on
- #2010 word wrapping in the translation tool
- ABC Explorer tool
- FLA export - remember last selected FLA version/compression
- AS3 Natural sorting of packages and script
### Fixed
- #2043 StartSound2 tag handling
- [PR176] - slow loading of allowed charsets - now lazy loaded
- [PR178] - infinite recursion when getter/setter calls same property of superclass
- #2070 Handling newlines and tabs in string values inside SWF to XML export
- #2017, [PR179] Classes in same package displayed as fully qualified
- [PR177] AS3 direct editation - Vector literal
- #2052, #2058 Adding new script placing class to incorrect DoABC tag
- #2072 AS3 direct editation - incorrectly using trait names of top level classes
- #2029 Simplify expressions stripping getlex and also ignoring some types of expressions
- #2052 Detection of switches based on notequal operator
- #2073 Recalculating frameCount field in SWF header and DefineSprite after deleting frame
- Handling currently selected tags when using folder preview selection (Not working Replace button, etc.)
- FLA export - Sprites which do not end with ShowFrame tag
- [PR109] FLA export - large font size of DefineEditText
- [PR110] FLA export - image instances
- FLA export - missing AS linkage class for fonts
- #2077 Switch detection problems producing §§goto
- #2077 AS3 recursion of deleting method with newfunction instruction
- #2077 AS3 direct editation - incorrect slot names
- #2077 AS3 direct editation - switch statement missing offset
- #2077 AS3 allow star string as property name (XML access)
- #2077 AS3 try..catch parts outside block
- AS3 try..catch inside loop unneccessary continue
- #2077 AS3 colliding types in current package with trait names
- NullPointer on reload / uncache
- #2076 Auto rename identifiers infinite loop caused by renaming in playerglobal library
- Not working "Show in Projector" button for DefineFont4 (hide)
- Proper error message when there is no room for new characters in the font (DefineFont1)
- Synchronization problems when adding characters to the font vs its display
- #2086 AS3 direct editation - Correct class order (instanceinfo,classinfo) respecting extends/implements
- #2086 AS3 direct editation - not deleting old nested methods when they have multiple usages
- #2009 Missing images in MacOs icon
- AS3 Initialization of var in script initializer
- AS3 Nullpointer on getting multiname which is out of bounds
- Exceptions on cancelling file loading
- Switching between openables on session load and on view type change
- Float/Float4 ABC format support
- AS3 Hilighting (go to) scripts when script has obfuscated name
### Changed
- #2070 String values inside SWF to XML export are backslash escaped
to properly handle newlines and tabs. Older versions of FFDec can read this
new format wrong and corrupt SWFs.
Major version of SWF to XML export changed to 2.
- AS3 Compound scripts (scripts containing multiple external definitions like compiled C code, etc.)
cannot be directly edited or imported (due to problems with script initializers)
- #2022 - AS3 - Make script initializer always visible and available instead of config
- #1355 Import panel moved to separate tab
### Removed
- Removed AS3 Constants list (tab on navigator) in favor of new ABC Explorer
version 18.5.0
posted on 2023-06-25
### Added
- #1998 Setting for maximum number of items in the cache - allows less memory consumption (Defaults to 500 per cache)
- #2038, #2028, #2034, #2036 Support for Harman AIR encrypted SWFs (Read-only)
- Decrypt Harman AIR SWFs via commandline
### Fixed
- #2004 Freezing when a shape has nonimage character set as fill
- #2004 Nonrepeating fill border
- #2008 AS3 P-code editing optional Double value when it has no fractional part
- AS3 P-code editation - zero line number on error
- #2007 AS3 renaming invalid identifiers - not refreshing AbcIndex afterwards
- AS1/2 - loadMovie / loadVariables / loadMovieNum / loadVariablesNum editation incorrectly setting GET as method
version 18.4.1
posted on 2023-04-05
### Fixed
- #1993 Incorrect scroll position causing shapes to be hidden
- #1994 Replace command in commandline with three argument causing replacements file load
- #1477 Open file (Context menu) with unicode characters, unicode in paths, on Windows
- Starting app with parameters causing wrong GUI init
- #1991 ConcurrentModificationException on clearing cache thread
- #1999 AS3 decompilation - XML constructor call with other than string argument
### Changed
- #1996 Items are now exported in order of appearance in the tag tree (usually SWF order), previously was it in order of selection
version 18.4.0
posted on 2023-03-19
### Added
- AS3 support for logical AND/OR compound operator
- AS3 Display missing namespaces along traits as §§namespace("url")
- #1888, #1892 AS3 option to select SWF dependencies to properly resolve namespaces, types, etc. (currently in GUI only)
- FileAttributes tag - SWF relative Urls flag
- AS3 P-code editing class trait
- #355 Updated Chinese translation
- FLA Export - AS2 - Sprite linkage to class
- #1682 AS1/2 Context menu add script on frames/buttons/placeObjects
- Allow adding second DoAction to a frame
### Fixed
- #1981 AS3 fully qualified (colliding) types in submethods
- AS3 direct editation - Allow member or call for doubles
- AS3 direct editation - Allow comma operator in XML filter operation
- AS3 direct editation - Allow comma operator in switch expressions
- AS3 XML embedded variables display and direct edit
- AS3 Metadata values order
- AS3 Metadata in P-code formatting
- AS3 Metadata single value (null item key)
- #1981 AS3 star import collisions
- #1982 Slow calculation of large shape outlines - now use only rectangles for large shapes
- #1986 AS2 Class detection - NullPointerException on certain classes
- AS3 P-code ValueKind namespaces handling
- AS3 direct editation - namespace definition without explicit value
- AS3 direct editation - var/const outside package
- AS3 interfaces - internal modifier on methods
- AS3 direct editation - interface method namespace
- AS3 p-code docs - deldescendants, negate_p operands
- AS3 p-code - IGNORE_REST method flag incorrectly shown as EXPLICIT
- #1989 AS3 - Slow deobfuscation (AVM2DeobfuscatorSimpleOld)
- AS3 - getouterscope instruction support
- #1990 Cloning DefineSprite causing incorrect tags written
- Do not display fonts added to stage (for example in testdata/as2.swf, the vertical text - sprite 10)
- AS2 Class detection - TemporaryRegisterMark handling
- FLA export scripts location
- FLA export shape tweens (morphshapes)
- AS1/2 adding CLIPACTIONRECORD to PlaceObject which already has a record
### Changed
- AS1/2/3 P-code - format Number values with EcmaScript toString function
- AS3 p-code - EXPLICIT method flag renamed to NATIVE
version 18.3.4
posted on 2023-01-30
### Added
- #1029 Better separation of library and main app, dependencies inside library zip, library readme
- Remembering script+folder scroll/caret position when switching between items, saving for pinned items
### Fixed
- #1948 Timeout while deobfuscation did not skip method
- #1948 NullPointerException on Simplify expressions on incrementent/decrement
- #1941 Export when no node is selected after SWF opening
- Exception handling in cache clearing thread
- DottedChain.PathPart NoSerializable exception
- #1951 Clearing Namespace/Multiname cache after renaming identifiers
- #1951 Renaming invalid identifiers with existing string collisions
- #1888 String casts - ConvertS on XML, XMLList
- #1953 Save as EXE - add file extension when missing
- #1954 Incorrect calculation of empty button bounds causing OutOfMemory
- #1944 Scroll position not retained on Ctrl+click in the tag tree
- #1940 AS3 decompilation - wrong assignment
- AS3 - incorrect switching P-code causing empty text
- AS3 - Select the trait after adding new
- #1955 AS3 - Exception during removing trait
- #688 AS3 Direct editation - construction (new keyword) converted to call when result not used
### Changed
- #1957 Increased maximum stack size to avoid StackOverflowErrors on unusual scripts
version 18.3.2
posted on 2023-01-10
### Removed
- #1935, #1913 Retaining shape exact position(bounds) in SVG export/import
version 10.0.0
posted on 1970-01-01
Fixed:
- P-code docs formatting fix
- Export dialog - handling sprite and SWF frames correctly
- #1275 debugger - show local variables fixes
- AS3 p-code editing - popup docs correctly displayed when label on line start
- #1278 replacing DefineBits error
- #1281 DefineFont 2/3 getting character advance value when replacing fix
- Set advance values button - Do not set advance if the char cannot be displayed in source font
- AS3 Goto declaration for single character names
- Identifier renaming for top level classes
- AS3 direct editation not correctly saving local register names
- #1254 FLA export - placing AS3 classes to FLA directory instead of scripts dir
- Mac OS X installer fix (.pkg)
- #1289 AS1/2 direct editation - variables used in inner functions must not be stored in local registers
- #1283 AS3 Unbounded Vector - Vector decompilation and direct editation fix
- #1294 Font editation (DefineFont2/3) - correct switching of wide character codes
- #1302 Callpropvoid instruction docblock not correct
- #1309 recent files not getting updates
- #1312 faster colliding usages finder
- #1303 garbled text when exporting frame with text
- #1314 user interface: button order
- Internal viewer shows red image when bitmap fill is not available (see issue #1320)
- #1323 Audio playback fails