From ad471984dc0b3ddb6fffbec05d6fd963e1a968c1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jindra=20Pet=C5=99=C3=ADk?= Date: Sat, 3 Aug 2024 19:45:56 +0200 Subject: [PATCH] More variable flags - taken from Gnash --- CHANGELOG.md | 2 +- lib/flashdebugger.jar | Bin 253481 -> 253660 bytes .../decompiler/flash/gui/DebugPanel.java | 7 ----- .../decompiler/flash/gui/abc/ABCPanel.java | 25 ++++++++++++++---- 4 files changed, 21 insertions(+), 13 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 1ac063150..d6cab5e45 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -44,7 +44,7 @@ All notable changes to this project will be documented in this file. - Exe export mode can be selected in in Save EXE dialog (select filetype) - wrapper or projectors - Optimized (faster) context menu for large SWF trees - Optimized (faster) deleting items for large SWF trees -- AS debugger - DontDelete variable flag (0x2) +- AS debugger - More varible flags ### Fixed - Debugger - getting children of top level variables diff --git a/lib/flashdebugger.jar b/lib/flashdebugger.jar index 20b39957bdae2e08181ca1675516297656d51d89..6dc8fe220292ab9e8bf3089227c116e750001bde 100644 GIT binary patch delta 2405 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 VGTF3OxDrejK1~sI1^=~>{Raz_8A1R6 diff --git a/src/com/jpexs/decompiler/flash/gui/DebugPanel.java b/src/com/jpexs/decompiler/flash/gui/DebugPanel.java index 03e6b07ca..525bddeac 100644 --- a/src/com/jpexs/decompiler/flash/gui/DebugPanel.java +++ b/src/com/jpexs/decompiler/flash/gui/DebugPanel.java @@ -17,18 +17,12 @@ package com.jpexs.decompiler.flash.gui; import com.jpexs.debugger.flash.Variable; -import com.jpexs.debugger.flash.messages.in.InBreakAtExt; import com.jpexs.debugger.flash.messages.in.InConstantPool; import com.jpexs.debugger.flash.messages.in.InFrame; -import com.jpexs.debugger.flash.messages.in.InGetVariable; import com.jpexs.decompiler.flash.SWF; import com.jpexs.decompiler.flash.configuration.Configuration; import com.jpexs.decompiler.flash.gui.DebuggerHandler.BreakListener; import com.jpexs.decompiler.flash.gui.abc.ABCPanel; -import com.jpexs.decompiler.flash.gui.debugger.DebugAdapter; -import com.jpexs.decompiler.flash.gui.debugger.DebugListener; -import com.jpexs.decompiler.flash.gui.debugger.Debugger; -import com.jpexs.decompiler.flash.gui.debugger.DebuggerTools; import com.jpexs.helpers.Helper; import de.hameister.treetable.MyTreeTable; import de.hameister.treetable.MyTreeTableModel; @@ -40,7 +34,6 @@ import java.awt.event.ActionListener; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.io.File; -import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.util.ArrayList; diff --git a/src/com/jpexs/decompiler/flash/gui/abc/ABCPanel.java b/src/com/jpexs/decompiler/flash/gui/abc/ABCPanel.java index 6e822f91b..773662e05 100644 --- a/src/com/jpexs/decompiler/flash/gui/abc/ABCPanel.java +++ b/src/com/jpexs/decompiler/flash/gui/abc/ABCPanel.java @@ -583,13 +583,8 @@ public class ABCPanel extends JPanel implements ItemListener, SearchListener 0) { + flagsStr.add("onlySWF6Up"); + } + + if ((flags & VariableFlags.IGNORE_SWF6) > 0) { + flagsStr.add("ignoreSWF6"); + } + + if ((flags & VariableFlags.ONLY_SWF7_UP) > 0) { + flagsStr.add("onlySWF7Up"); + } + + if ((flags & VariableFlags.ONLY_SWF8_UP) > 0) { + flagsStr.add("onlySWF8Up"); + } + + if ((flags & VariableFlags.ONLY_SWF9_UP) > 0) { + flagsStr.add("onlySWF9Up"); + } + for (Integer f : unknownFlags) { if ((flags & f) > 0) { flagsStr.add("unk" + f);