Skip to content

Comments

avm2: Enable stack traces for Flash Player 11.5+ and SWF18+#19571

Merged
kjarosh merged 4 commits intoruffle-rs:masterfrom
kjarosh:avm2-stacktraces
May 23, 2025
Merged

avm2: Enable stack traces for Flash Player 11.5+ and SWF18+#19571
kjarosh merged 4 commits intoruffle-rs:masterfrom
kjarosh:avm2-stacktraces

Conversation

@kjarosh
Copy link
Member

@kjarosh kjarosh commented Feb 19, 2025

@kjarosh kjarosh added A-avm2 Area: AVM2 (ActionScript 3) T-fix Type: Bug fix (in something that's supposed to work already) waiting-on-review Waiting on review from a Ruffle team member labels Feb 19, 2025
Copy link
Member

@n0samu n0samu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Despite what the docs say, this behavior also seems to depend on the SWF version. Notice that the attached SWF displays no stack trace in release FP: StackTraceTest.zip. But if you change the SWF version to 18 or higher in JPEXS, then the stack trace appears.
Also, be sure to test #12572 since it is affected by the behavior of getStackTrace().

@kjarosh kjarosh changed the title avm2: Enable stack traces for Flash Player 11.5+ avm2: Enable stack traces for Flash Player 11.5+ and SWF18+ Feb 21, 2025
@kjarosh kjarosh requested a review from adrian17 February 21, 2025 15:06
@kjarosh kjarosh force-pushed the avm2-stacktraces branch 2 times, most recently from b553696 to 40c8856 Compare May 23, 2025 10:18
kjarosh added 4 commits May 23, 2025 12:24
This option specifies whether to emulate flashplayer (release mode)
or flashplayerdebugger (debug mode).
For Flash Player 11.5+ and SWF18+, stack traces are always enabled.
Some content uses this behavior to verify whether the user is using
Flash Player 11.5 onwards.

For Flash Player 11.4 and earlier or SWF<18, stack traces are enabled
only in the debug build.

See <https://docs.ruffle.rs/en_US/FlashPlatform/reference/actionscript/3/Error.html#getStackTrace()>
These tests check whether stack traces are returned based on the SWF
version and the debug/release mode.
@kjarosh kjarosh force-pushed the avm2-stacktraces branch from 40c8856 to 6ffadd8 Compare May 23, 2025 10:25
Copy link
Collaborator

@adrian17 adrian17 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, the only thing I'm not a fan of is calling it 'player mode', since the word is super generic. But it's not exposed via CLI so I guess it's fine for now?

@kjarosh
Copy link
Member Author

kjarosh commented May 23, 2025

LGTM, the only thing I'm not a fan of is calling it 'player mode', since the word is super generic. But it's not exposed via CLI so I guess it's fine for now?

I agree, let me know if you have any other ideas about how to name it and we can change it. I intentionally haven't exposed it in CLI due to this reason.

@kjarosh kjarosh removed the waiting-on-review Waiting on review from a Ruffle team member label May 23, 2025
@kjarosh kjarosh merged commit 23b9e6f into ruffle-rs:master May 23, 2025
22 checks passed
@kjarosh kjarosh deleted the avm2-stacktraces branch May 23, 2025 20:45
Hancock33 added a commit to Hancock33/batocera.piboy that referenced this pull request May 25, 2025
------------------------------------------------------------------------------------------
dolphin-emu.mk 66b8fa03cbe1a57ce71f3d106c5bfabf36498710 # Version: Commits on May 24, 2025
------------------------------------------------------------------------------------------
Merge pull request #13705 from noahpistilli/fix-corrupt-msg

IOS/KD: Set Checksum when flushing NWC24Config,

------------------------------------------------------------------------------------------
duckstation.mk 80c9a8d3991daf8af2d0e152297510227f858f81 # Version: Commits on May 24, 2025
------------------------------------------------------------------------------------------
Qt: Remove unused ui file,

--------------------------------------------------------------------------------------
flycast.mk ffaada9e9d23a4a8eedc5f312e315fe63cd22275 # Version: Commits on May 23, 2025
--------------------------------------------------------------------------------------
Fetch translations & Recreate libretro_core_options_intl.h,

----------------------------------------------------
pcsx2.mk v2.3.370 # Version: Commits on May 24, 2025
----------------------------------------------------
- [OSD: Fix performance overlay overwriting dump stats when shifted left](PCSX2/pcsx2#12707)

-------------------------------------------------------------------------------------
ppsspp.mk 6e8c92df59a7f97cc27970da0b7a154540528c45 # Version: Commits on May 24, 2025
-------------------------------------------------------------------------------------
Merge pull request #20391 from Sencaid/master

Deutsche Übersetzung überarbeitet,

---------------------------------------------------------------
ruffle.mk nightly-2025-05-24 # Version: Commits on May 24, 2025
---------------------------------------------------------------
## What's Changed

* chore: Update translations by @RuffleBuild in ruffle-rs/ruffle#20455

* chore: Bump rust-flash-lso to latest git master by @torokati44 in ruffle-rs/ruffle#20459

* avm2: Enable stack traces for Flash Player 11.5+ and SWF18+ by @kjarosh in ruffle-rs/ruffle#19571

* ci: Remove lld workaround for linkme by @torokati44 in ruffle-rs/ruffle#20460

**Full Changelog**: ruffle-rs/ruffle@nightly-2025-05-23...nightly-2025-05-24,

----------------------------------------------------
ryujinx.mk 1.3.49 # Version: Commits on May 23, 2025
----------------------------------------------------
# Canary builds:

These builds are experimental and may sometimes not work, use [regular builds](https://github.com/Ryubing/Stable-Releases/releases/latest) instead if that sounds like something you don't want to deal with.

| Platform | Artifact |

|--|--|

| Windows 64-bit | [Canary Windows Artifact](https://github.com/Ryubing/Canary-Releases/releases/download/1.3.49/ryujinx-canary-1.3.49-win_x64.zip) |

| Windows ARM 64-bit | [Canary Windows ARM Artifact](https://github.com/Ryubing/Canary-Releases/releases/download/1.3.49/ryujinx-canary-1.3.49-win_arm64.zip) |

| Linux 64-bit | [Canary Linux Artifact](https://github.com/Ryubing/Canary-Releases/releases/download/1.3.49/ryujinx-canary-1.3.49-linux_x64.tar.gz) |

| Linux ARM 64-bit | [Canary Linux ARM Artifact](https://github.com/Ryubing/Canary-Releases/releases/download/1.3.49/ryujinx-canary-1.3.49-linux_arm64.tar.gz) |

| macOS | [Canary macOS Artifact](https://github.com/Ryubing/Canary-Releases/releases/download/1.3.49/ryujinx-canary-1.3.49-macos_universal.app.tar.gz) |

**[Full Changelog](https://git.ryujinx.app/ryubing/ryujinx/-/compare/Canary-1.3.48...Canary-1.3.49)**,

--------------------------------------------------------------------------------------
shadps4.mk 10d09ac97735076b4068079ca2d1aedd119e837d # Version: Commits on May 23, 2025
--------------------------------------------------------------------------------------
Added back the \Attempted to track non-GPU memory\ assert. (#2980)

* Fix log message

* Add non-GPU memory assert back,

----------------------------------------------------------------------------------
avp.mk eaff12241fd9fff8e5e5e6d50b6d7bde4482241b # Version: Commits on May 24, 2025
----------------------------------------------------------------------------------
Fixes and enhancements

Hacks and fixed-point math enhancements for skeletal animation calculations.,

---------------------------------------------------------------------------------------
corsixth.mk daf591522e423f5b356ff055265b81751cdc3988 # Version: Commits on May 24, 2025
---------------------------------------------------------------------------------------
Merge pull request #2870 from TheCycoONE/bump_vcpkg_may_2025

Bump vcpkg for May 2025,

------------------------------------------------------------------------------------------
devilutionx.mk e57a2d7d54108973bc55249f4c4ccc44e475d03e # Version: Commits on May 24, 2025
------------------------------------------------------------------------------------------
Android stuff

* Upgrade Gradle addon to latest version

* Replace deprecated syntax for \Clean\ task,

---------------------------------------------------------------------------------------------
easyrpg-player.mk 36248937a68c773e7a268e2d8a8be605acda949e # Version: Commits on May 24, 2025
---------------------------------------------------------------------------------------------
Merge pull request #3420 from Ghabry/android-sdl

SDL: Bump Android version,

------------------------------------------------------------------------------------------
openbor7530.mk e8f257a0f9e92499f065d4c6968812932b316c36 # Version: Commits on May 24, 2025
------------------------------------------------------------------------------------------
Remove flag now accepts text arguments \hit\ and

one\. open to script as MODEL_PROPERTIES_REMOVE_CONFIG and documented.,

----------------------------------------------------------------------------------------
retroarch.mk d5699457ca1eee6476785ad153bab8819d2d6d38 # Version: Commits on May 24, 2025
----------------------------------------------------------------------------------------
Fetch translations from Crowdin,

-----------------------------------------------------------------------------------------
libdmdutil.mk f1d90154b0cb21938e7f608329197705ba76e9cf # Version: Commits on May 23, 2025
-----------------------------------------------------------------------------------------
deps: bump libserum-concentrate to 9e071b9b0062352476786ff578368c7dc019ac07,

-----------------------------------------------------------------------------------------
sonic3-air.mk b584686fc1835e7af3f34fc36b59e15a4b1ac246 # Version: Commits on May 24, 2025
-----------------------------------------------------------------------------------------
librmx update,

-----------------------------------------------------------------------------------
tr1x.mk c1a9933783a1ed9b0246f64e87d396a4de12c194 # Version: Commits on May 24, 2025
-----------------------------------------------------------------------------------
docs/tr1: release 4.11.2,

-----------------------------------------------------------------------------------
tr2x.mk c1a9933783a1ed9b0246f64e87d396a4de12c194 # Version: Commits on May 24, 2025
-----------------------------------------------------------------------------------
docs/tr1: release 4.11.2,

-----------------------------------------------------------------------------------------------
libretro-easyrpg.mk 36248937a68c773e7a268e2d8a8be605acda949e # Version: Commits on May 24, 2025
-----------------------------------------------------------------------------------------------
Merge pull request #3420 from Ghabry/android-sdl

SDL: Bump Android version,

-----------------------------------------------------------------------------------------------
libretro-flycast.mk ffaada9e9d23a4a8eedc5f312e315fe63cd22275 # Version: Commits on May 23, 2025
-----------------------------------------------------------------------------------------------
Fetch translations & Recreate libretro_core_options_intl.h,

----------------------------------------------------------------------------------------------
libretro-ppsspp.mk 6e8c92df59a7f97cc27970da0b7a154540528c45 # Version: Commits on May 24, 2025
----------------------------------------------------------------------------------------------
Merge pull request #20391 from Sencaid/master

Deutsche Übersetzung überarbeitet,

---------------------------------------------------------------------------------------------
libretro-tic80.mk 8cb40026fbf45bf3d4aaa6af1456aa29b0ad2224 # Version: Commits on May 24, 2025
---------------------------------------------------------------------------------------------
Add F-Droid download badge (#2783)

**Is your feature request related to a problem? Please describe.**

I visited https://github.com/nesbox/TIC-80 and thought your Android app is only available for desktop devices.

Browsing this repository respectively the docs I noticed it is available on F-Droid,  too.

**Describe the solution you'd like**

It would be great to have a download button or at least a link on your download page at

Herr you can get a download badge: https://fdroid.gitlab.io/artwork/badge/get-it-on.png

I have directly used it for the link here, unfortunately needs HTML for [resizing](https://stackoverflow.com/q/24383700/5008962).

Best would be to also add it to the website, for even more visibility.,

----------------------------------------------------------
retrocrisis.mk 20250524 # Version: Commits on May 24, 2025
----------------------------------------------------------
NOTES:

- Fixed \RC GDV-NTSC - Master System - Clean.slangp\

- Fixed \RC GDV-NTSC - Mega Drive - Clean.slangp\

- Fixed \RC GDV-NTSC - Saturn.slangp\

- Fixed \RC GDV-NTSC - SGB - Clean.slangp\

___

INSTALLATION GUIDES:

- [Windows](https://youtu.be/G42g23ONYsI)

- [iOS](https://youtu.be/2L3fgoabkq0)

- [Linux](https://youtu.be/R12PqZ8LSIY)

- [Steam Deck - Discover Store version](https://youtu.be/Bbr0a6b1qHI)

- [Steam Deck - Steam Store version](https://youtu.be/xKyZ6F7r-54)

___

*Please delete old packs before installing this pack
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-avm2 Area: AVM2 (ActionScript 3) T-fix Type: Bug fix (in something that's supposed to work already)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Error: Flash Player 11.5 or AIR 3.5 required to use this feature.

3 participants