+ update 2020: WARNING - support of the decompiler is now VERY LIMITED. There are no active developers. This means we will NOT develop new features and/or fix most of bugs. We left the tracker running in case somebody from community would like to work on it. Sorry for the inconvenience.
State: closed new: Initial state. As long as issue is in this state, the work on the issue has not yet begun. opened: Opened state means developer started working on the issue. Feature/Fix will probably be in the next release. postponed: This means developer is not working on it now, for some reason it cannot be implemented now. Issue may be opened again in the future. upgraded: Issue is in upgraded state when developer made changes to the program and new version was released. closed: This means the user is satisfied with issue results and no more changes are needed. invalid: These issues cannot be solved. ignored: Developer decided to take no action on this issue. returned: Program changes were made but user is not satisfied and returned the issue.
If an SVG with multiple shapes is imported, the application will leave the fillStyles
array empty, and the shape will not show up in the output SWF.
> What steps will reproduce the problem?
1. Replace existing vector shape by importing SVG with multiple objects in it
2. Try saving the SWF
3. Note how the shape is not visible in the output
> What is the expected output? What do you see instead?
Instead of defining the styles inside the StyleChangeRecords, define them per-shape once
and then reference them by index in the StyleChangeRecords
> What version of the product are you using? Is it "nightly build"? Which operating system
do you have?
nightly build (git HEAD) on Arch Linux x86_64
$ java -version
openjdk version "1.8.0_102"
OpenJDK Runtime Environment (build 1.8.0_102-b14)
OpenJDK 64-Bit Server VM (build 25.102-b14, mixed mode)
> Please provide any additional information below. If the problem is related to a SWF
file, attach it here, otherwise we can't help you.
The attached SVG is the one I'm trying to import. The SWF is the one I'm trying to edit.
The visual result is not the same, at least I suspect this is the reason. In the output,
the shape is not visible if I replace it, and the only difference I can see is the
fillStyles thing. If anyone has a different explanation as to why it doesn't show up,
please let me know.
It should be the same. As far as I know the StyleChangeRecord replaces the existing
I tried to replace the first shape (characterid = 1) with the SVG you attached, I can see
the gorilla in FFDec, however it is a little bit buggy, but it is not because of the
Chrome is using pepperflash, it's just sandboxed flash player using a Chrome API.
Can you tell me the exact steps you took to replace the Billy Mays shape with the SVG?
When I do it, I don't see it in the output.
I replaced the vector backgound, not the guy.
- open original SWF
- open shapes in left tree
- right click on the first shape
- select Replace (or replace - update bounds if you want to increase the size of the
- select the svg file, press open
- press OK in the warning dialog
- sleect File/save as, save the file
- open the new SWF in chrome
If you want to replace the guy, then the problem is that the gorilla is simply too big.
The guy (shape 5-8) is 230x199 px
the gorilly is 802x494, and the upper left corner (230x199px) is empty...
You should resize your SVG first.
Okay, thanks. I didn't even think of size issues! I resized the SVG, and it all looks good
in ffdec, but in the output flash there are weird streaks through it and part of it is
missing. Any idea what could be going on with that?
The problem is that the svg contains some features which is not supported in flash.
In your case the problem is the cubic curves in 'd' attribute of 'path' tag. ('c' or 'C'
Sometimes it is not possibble to convert them to quad curves. (Calculation retuns infinite
number, this is why there are long parallel lines)
This svg is quite complex, why don't you use a bitmap image (png, jpg), probably they are
Okay yeah, using a PNG works, thanks!
What also worked a bit was to break apart the shapes of the SVG, but it would be a lot of
work to do so manually.
Thanks for the help, you can close this now since it's not really a bug.