Fixed Incorrect debugger line numbers when "Open loaded while playing" is enabled

Fixed AS3 debugger - Slow injecting debug info - now faster
Fixed AS3 debugger - obfuscated classes debugging
Fixed Delayed open loaded SWFs while playing
Fixed AS3 Direct editation - script initializer for main document class

Changed Wrong unicode escape `{invalid_utf8:xxx}` changed to `{invalid_utf8=xxx}` for compatibility with file names
This commit is contained in:
Jindra Petřík
2023-11-19 02:00:27 +01:00
parent e54973b761
commit bd6c953218
53 changed files with 325 additions and 80 deletions

View File

@@ -57,6 +57,7 @@ public class ActionScript2AssemblerTest extends ActionScript2TestBase {
doa.setActionBytes(Action.actionsToBytes(actions, true, swf.version));
HighlightedTextWriter writer = new HighlightedTextWriter(new CodeFormatting(), false);
doa.getASMSource(ScriptExportMode.PCODE, writer, null);
writer.finishHilights();
return writer.toString();
} catch (IOException | ActionParseException | InterruptedException ex) {
fail();
@@ -78,7 +79,7 @@ public class ActionScript2AssemblerTest extends ActionScript2TestBase {
} catch (InterruptedException ex) {
fail();
}
writer.finishHilights();
return writer.toString();
} catch (IOException | ActionParseException ex) {
fail();
@@ -100,7 +101,7 @@ public class ActionScript2AssemblerTest extends ActionScript2TestBase {
} catch (InterruptedException ex) {
fail();
}
writer.finishHilights();
return writer.toString();
} catch (IOException | ActionParseException ex) {
fail();
@@ -126,9 +127,11 @@ public class ActionScript2AssemblerTest extends ActionScript2TestBase {
doa.setActionBytes(Action.actionsToBytes(actions, true, swf.version));
HighlightedTextWriter writer = new HighlightedTextWriter(new CodeFormatting(), false);
Action.actionsToSource(new HashMap<>(),doa, doa.getActions(), "", writer, swf.getCharset());
writer.finishHilights();
String actualResult = writer.toString();
writer = new HighlightedTextWriter(new CodeFormatting(), false);
doa.getASMSource(ScriptExportMode.PCODE, writer, null);
writer.finishHilights();
String decompiled = writer.toString();
assertEquals(actualResult.trim(), "ok = false;");