From 88f63aecdaacf8b58e67071c150c2fccb1e92273 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jindra=20Pet=C5=99=C3=ADk?= Date: Tue, 25 Nov 2025 21:23:16 +0100 Subject: [PATCH] Fixed: #2571 SVG export - StackOverflow for DefineVideoStream --- CHANGELOG.md | 2 ++ .../src/com/jpexs/decompiler/flash/timeline/Timeline.java | 3 ++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 95742dba9..5ccb4da0c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,7 @@ All notable changes to this project will be documented in this file. ### Fixed - [#2570] NullpointerException on SVG export of DefineEditText - [#2570] ClassCastException on exporting sound head (export all command) +- [#2571] SVG export - StackOverflow for DefineVideoStream ## [24.1.1] - 2025-11-17 ### Added @@ -4048,6 +4049,7 @@ Major version of SWF to XML export changed to 2. [alpha 8]: https://github.com/jindrapetrik/jpexs-decompiler/compare/alpha7...alpha8 [alpha 7]: https://github.com/jindrapetrik/jpexs-decompiler/releases/tag/alpha7 [#2570]: https://www.free-decompiler.com/flash/issues/2570 +[#2571]: https://www.free-decompiler.com/flash/issues/2571 [#2556]: https://www.free-decompiler.com/flash/issues/2556 [#2536]: https://www.free-decompiler.com/flash/issues/2536 [#2537]: https://www.free-decompiler.com/flash/issues/2537 diff --git a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/timeline/Timeline.java b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/timeline/Timeline.java index 170f8c604..522eb2e66 100644 --- a/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/timeline/Timeline.java +++ b/libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/timeline/Timeline.java @@ -29,6 +29,7 @@ import com.jpexs.decompiler.flash.tags.DefineEditTextTag; import com.jpexs.decompiler.flash.tags.DefineScalingGridTag; import com.jpexs.decompiler.flash.tags.DefineSceneAndFrameLabelDataTag; import com.jpexs.decompiler.flash.tags.DefineSpriteTag; +import com.jpexs.decompiler.flash.tags.DefineVideoStreamTag; import com.jpexs.decompiler.flash.tags.DoActionTag; import com.jpexs.decompiler.flash.tags.DoInitActionTag; import com.jpexs.decompiler.flash.tags.FrameLabelTag; @@ -1782,7 +1783,7 @@ public class Timeline { * @return True if has small strokes */ private boolean tagHasSmallStrokes(SVGExporter exporter, DrawableTag drawableTag, Matrix matrix) { - if (drawableTag instanceof Timelined) { + if (drawableTag instanceof Timelined && !(drawableTag instanceof DefineVideoStreamTag)) { Timelined tim = (Timelined) drawableTag; for (Frame fr : tim.getTimeline().frames) { for (DepthState ds : fr.layers.values()) {