core: Set loader to cancelled if target clip is avm1_removed#23620
Open
ChrisCPI wants to merge 1 commit intoruffle-rs:masterfrom
Open
core: Set loader to cancelled if target clip is avm1_removed#23620ChrisCPI wants to merge 1 commit intoruffle-rs:masterfrom
ChrisCPI wants to merge 1 commit intoruffle-rs:masterfrom
Conversation
63dbf21 to
630fcc6
Compare
Partially fixes an issue where starting a movie load on an MC, then removing that MC before the load is finished, will still run the loaded movie when it finishes.
630fcc6 to
12ad201
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Fixes #23402
When calling
movie_loaderandmovie_loader_data, it will check if the target clip has beenavm1_removed(). If so, then it will set that loader's status toCancelledand return early, preventing the loaded movie from executing.Generally,
movie_loaderwill detect if the clip was removed when it was removed immediately after trying to load a movie into it. Otherwise,movie_loader_datawill detect it if the clip was removed in-between the time when the load started and when it finished.Testing
3 new tests have been added, but only
avm1/load_cancel_via_removemovieclipis passing. There is likely some underlying issue withunloadMovieandMovieClipLoader.unloadClipthat is causing the other two to fail.Checklist