Skip to content

core: Use Cells & RefCells where possible in MovieClipData#20563

Merged
kjarosh merged 2 commits intoruffle-rs:masterfrom
kjarosh:movieclip-refactor
Jun 17, 2025
Merged

core: Use Cells & RefCells where possible in MovieClipData#20563
kjarosh merged 2 commits intoruffle-rs:masterfrom
kjarosh:movieclip-refactor

Conversation

@kjarosh
Copy link
Member

@kjarosh kjarosh commented Jun 5, 2025

This refactor makes it easier to get rid of GcCell.

@kjarosh kjarosh added A-core Area: Core player, where no other category fits T-refactor Type: Refactor / Cleanup waiting-on-review Waiting on review from a Ruffle team member labels Jun 5, 2025
@kjarosh kjarosh force-pushed the movieclip-refactor branch from 3331454 to 220637b Compare June 7, 2025 06:21
@kjarosh kjarosh removed the waiting-on-review Waiting on review from a Ruffle team member label Jun 7, 2025
@kjarosh kjarosh enabled auto-merge (rebase) June 7, 2025 06:21
@Lord-McSweeney Lord-McSweeney added the waiting-on-author Waiting on the PR author to make the requested changes label Jun 8, 2025

// If this movie was loaded from ImportAssets(2), this will be the parent movie.
importer_movie: Option<Arc<SwfMovie>>,
importer_movie: RefCell<Option<Arc<SwfMovie>>>,
Copy link
Collaborator

Choose a reason for hiding this comment

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

this one's unfortunate. (though it's not worth working on as fixing the cyclical Arc issue will switch it up anyway)

kjarosh added 2 commits June 17, 2025 10:30
This refactor makes it easier to get rid of GcCell.
This refactor makes it easier to get rid of GcCell.
@kjarosh kjarosh force-pushed the movieclip-refactor branch from 220637b to 9bfc281 Compare June 17, 2025 08:32
@kjarosh kjarosh removed the waiting-on-author Waiting on the PR author to make the requested changes label Jun 17, 2025
@kjarosh kjarosh merged commit 4783d12 into ruffle-rs:master Jun 17, 2025
23 checks passed
@kjarosh kjarosh deleted the movieclip-refactor branch June 17, 2025 08:53
Hancock33 added a commit to Hancock33/batocera.piboy that referenced this pull request Jun 21, 2025
-----------------------------------------------------------------------------------------------------
chromebook-linux-audio.mk 884b7b62bd92dba65a54bd8be72878fe20cf44e1 # Version: Commits on Jun 18, 2025
-----------------------------------------------------------------------------------------------------
Check for nixos and exit if found,

---------------------------------------------------------------------------------------
portmidi.mk 340c1c3d4af902253e78c699794eda4792b43976 # Version: Commits on Jun 18, 2025
---------------------------------------------------------------------------------------
Merge pull request #87 from rrrapha/doxygen

Generate doxygen documentation with CMake,

--------------------------------------------------------------------------------------------------------
batocera-emulationstation.mk c065d5e96de7727dc1dff21e178b466ccbb4eb61 # Version: Commits on Jun 18, 2025
--------------------------------------------------------------------------------------------------------
Merge pull request #1937 from fabricecaruso/win

[GLES20Renderer] Fix font texture initialization with GL_ALPHA,

------------------------------------------------------------------------------------------------
batocera-es-piboy.mk c065d5e96de7727dc1dff21e178b466ccbb4eb61 # Version: Commits on Jun 18, 2025
------------------------------------------------------------------------------------------------
Merge pull request #1937 from fabricecaruso/win

[GLES20Renderer] Fix font texture initialization with GL_ALPHA,

----------------------------------------------------------------------------------------------
es-theme-carbon.mk 405971457328dd364f345e2cb97e003099f83ee2 # Version: Commits on Jun 17, 2025
----------------------------------------------------------------------------------------------
add namco22,

-----------------------------------------------------------------------------------
cemu.mk 00ff5549d91e6d8ddc43d0565192158a216e4cc2 # Version: Commits on Jun 18, 2025
-----------------------------------------------------------------------------------
General aarch64 improvements & Apple Silicon support (#1255),

------------------------------------------------------------------------------------------
duckstation.mk 1653cf82a20c722619f0a57482b59a0242b71f57 # Version: Commits on Jun 18, 2025
------------------------------------------------------------------------------------------
GPU/HW: Fix GLSL ES compile error,

--------------------------------------------------------------------------------------
melonds.mk 71edf793fcd2726c4212f7915194c60107dc2809 # Version: Commits on Jun 18, 2025
--------------------------------------------------------------------------------------
setupMicInputData() ought to be called at all times tho,

----------------------------------------------------
pcsx2.mk v2.3.423 # Version: Commits on Jun 18, 2025
----------------------------------------------------
- [CI: Restore repository check in Flathub publish action](PCSX2/pcsx2#12862)

-------------------------------------------------------------------------------------
ppsspp.mk a3e3f203a86940483777ce384a1beeb950e9d1ec # Version: Commits on Jun 18, 2025
-------------------------------------------------------------------------------------
Merge pull request #20547 from warmenhoven/warmenhoven/pr/x86-build-fix

x86: build fix,

------------------------------------------------------------------------------------
rpcs3.mk 4fd581b812abf1507bca92845b39e47e9e6d298a # Version: Commits on Jun 18, 2025
------------------------------------------------------------------------------------
Add github actions for linux arm gcc,

---------------------------------------------------------------
ruffle.mk nightly-2025-06-18 # Version: Commits on Jun 18, 2025
---------------------------------------------------------------
## What's Changed

* build(deps-dev): bump the npm-minor group in /web with 10 updates by @dependabot in ruffle-rs/ruffle#20632

* core: Use Cells & RefCells where possible in MovieClipData by @kjarosh in ruffle-rs/ruffle#20563

* build(deps-dev): bump eslint-plugin-jsdoc from 50.7.1 to 51.0.1 in /web by @dependabot in ruffle-rs/ruffle#20631

* build(deps): bump the cargo-minor group with 7 updates by @dependabot in ruffle-rs/ruffle#20630

* chore: Update to wgpu 25 and egui git main by @torokati44 in ruffle-rs/ruffle#20494

* avm2: Initialize the loaderInfo.loaderURL more consistently  by @evilpie in ruffle-rs/ruffle#20627

**Full Changelog**: ruffle-rs/ruffle@nightly-2025-06-16...nightly-2025-06-18,

--------------------------------------------------------------------------------------
shadps4.mk 20670186abbe1d74ac554afb33b3042b783607f6 # Version: Commits on Jun 18, 2025
--------------------------------------------------------------------------------------
Potential MacOS Build Fix (#3117)

* Potential MacOS build fix for update

* Imported string instead of changing name to std::string_view,

-------------------------------------------------------------------------------------
snes9x.mk a168e789719d6bc8e06110d517d98c3d098d5834 # Version: Commits on Jun 18, 2025
-------------------------------------------------------------------------------------
libretro/win32: Add stdcpp17 to compile flags for msvc.,

---------------------------------------------------------------------------------------------
solarus-engine.mk c121821d4f70eebba79f43ff0f9d6d2163ce2857 # Version: Commits on Jun 17, 2025
---------------------------------------------------------------------------------------------
Merge branch 'v2.0' into dev

-----------------------------------------------------------------------------------
xemu.mk 59cec6599df8010554e54132f2eb264ffbc7e97d # Version: Commits on Jun 18, 2025
-----------------------------------------------------------------------------------
nvnet: Move NetClientInfo handlers up,

-----------------------------------------------------------------------------------
ymir.mk 5e23fde25c712417657dd1ad670224767f783475 # Version: Commits on Jun 18, 2025
-----------------------------------------------------------------------------------
fix(SMPC): The first byte of INTBACK peripheral reports for [3D] Control Pad must have bits 2-0 set to 111 instead of 100 used in TH/TR reading mode

Fixes input issues in Crusader: No Remorse, WipEout and several other games,

------------------------------------------------------------------------------------
box64.mk c96c1ad5ddb977a3723b6d53317f7942546e0779 # Version: Commits on Jun 18, 2025
------------------------------------------------------------------------------------
[BIONIC] Fixed some compilation warnings (#2756),

------------------------------------------------------------------------------------
cdogs.mk f582f1639cfff7812976c54600141b4f73e64a8c # Version: Commits on Jun 18, 2025
------------------------------------------------------------------------------------
Nosering #712,

---------------------------------------------------------------------------------------
corsixth.mk 691568c63fdb2dffaa9c291e0ad6f1c4251f428e # Version: Commits on Jun 18, 2025
---------------------------------------------------------------------------------------
Merge pull request #2919 from lewri/let_handymen_work

Restore handyman cleaning abilities,

---------------------------------------------------------------------------------------
etlegacy.mk 6ac69c5c7a233a1bd69cff7394543c0892c5944a # Version: Commits on Jun 17, 2025
---------------------------------------------------------------------------------------
github-actions: Run only 1 CI for each branch at a time,

------------------------------------------------------------------------------------------
fallout2-ce.mk 34ef1c2f267afba61ce5743cbb463927f6d31835 # Version: Commits on Jun 18, 2025
------------------------------------------------------------------------------------------
Merge pull request #213 from fallout2-ce/disappearing-inventory-item-fix

Update inventory.cc,

-------------------------------------------------------------------------------------------
jazz2-native.mk 158bacfb7a1eec3f159d5b38ea34aedd373c04cf # Version: Commits on Jun 18, 2025
-------------------------------------------------------------------------------------------
Added `/gpu-workaround`,

----------------------------------------------------------------------------------------
openmohaa.mk 45c112a463a76bcd75847402f2bcb6320ea6481a # Version: Commits on Jun 17, 2025
----------------------------------------------------------------------------------------
Properly close the file handle if an invalid length was returned on read attempt,

----------------------------------------------------------------------------------
stk.mk b528010f24fbedc4485c64e3c5df1056670b9020 # Version: Commits on Jun 17, 2025
----------------------------------------------------------------------------------
Fix uninitialized variable in PlayerKartWidget,

----------------------------------------------------
rclone.mk v1.70.0 # Version: Commits on Jun 18, 2025
----------------------------------------------------
This is the v1.70.0 release of rclone.

Full details of the changes can be found in [the changelog](https://rclone.org/changelog/#v1-70-0-2025-06-17).

,

-----------------------------------------------------------------------------------
xone.mk b8f90dabf73e72d0446e0ff1fd27471e87abb501 # Version: Commits on Jun 18, 2025
-----------------------------------------------------------------------------------
Merge pull request #66 from Lawstorant/fix-6-16

Fix build on Linux 6.16,

----------------------------------------------------------------------------------------
retroarch.mk 9e5f6f4d8a99f42b9171ec1a09aee4e4409641d2 # Version: Commits on Jun 18, 2025
----------------------------------------------------------------------------------------
apple: fix bundle id display,

-------------------------------------------------------------------------------------
libdof.mk 7430cc458992e6d7c4622974a42f8f3b551060d6 # Version: Commits on Jun 18, 2025
-------------------------------------------------------------------------------------
misc: Add support for Pinscape Pico. Misc cleanup. (#8),

----------------------------------------------------------------------------------------
doomretro.mk 72263cec966e4204ccda859f264c5c82ce36c4ff # Version: Commits on Jun 18, 2025
----------------------------------------------------------------------------------------
Update to Visual Studio v17.14.6,

-------------------------------------------------------------------------------------
gzdoom.mk 7cac623ecbe8b8e44e3cf4f55288d65ad669681f # Version: Commits on Jun 18, 2025
-------------------------------------------------------------------------------------
Fix SMF_PRECISE flag for seekers

Use the player's actual eye position when calculating.,

-----------------------------------------------------------------------------------
tr1x.mk 2273aab4b8bbd6b31f40d862595e6e7eb7c22ab7 # Version: Commits on Jun 18, 2025
-----------------------------------------------------------------------------------
Merge branch 'stable' into develop,

-----------------------------------------------------------------------------------
tr2x.mk 2273aab4b8bbd6b31f40d862595e6e7eb7c22ab7 # Version: Commits on Jun 18, 2025
-----------------------------------------------------------------------------------
Merge branch 'stable' into develop,

--------------------------------------------------------------------------------------------------
libretro-clownmdemu.mk 4371de8e34df9425e17e6ce70883b0794ee66f26 # Version: Commits on Jun 17, 2025
--------------------------------------------------------------------------------------------------
Check-out submodules recursively

Checking-out just the common repo is not even nearly enough.,

---------------------------------------------------------------------------------------------
libretro-fbneo.mk 74cd6de97626baddd39e26066e697d0881bc6933 # Version: Commits on Jun 18, 2025
---------------------------------------------------------------------------------------------
(libretro) fix oob on keyboard devices,

-------------------------------------------------------------------------------------------------
libretro-geargrafx.mk 280057bb46410d0b664f94787f9568ba23beafd6 # Version: Commits on Jun 18, 2025
-------------------------------------------------------------------------------------------------
CD-ROM Audio fader,

-----------------------------------------------------------------------------------------------------
libretro-mame2003-plus.mk ada3b0c61f9221e5744effa645e95b2119a457e9 # Version: Commits on Jun 17, 2025
-----------------------------------------------------------------------------------------------------
Target Hits / Quick Shots screen size and layer offsets,

----------------------------------------------------------------------------------------------
libretro-ppsspp.mk a3e3f203a86940483777ce384a1beeb950e9d1ec # Version: Commits on Jun 18, 2025
----------------------------------------------------------------------------------------------
Merge pull request #20547 from warmenhoven/warmenhoven/pr/x86-build-fix

x86: build fix,

---------------------------------------------------------------------------------------------
libretro-vba-m.mk 48fc076cc2369c1269ed21186ccd2ae7dad6c12b # Version: Commits on Jun 18, 2025
---------------------------------------------------------------------------------------------
Set WinSparkle to 0.9.1,
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-core Area: Core player, where no other category fits T-refactor Type: Refactor / Cleanup

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants