Skip to content

Conversation

@kjarosh
Copy link
Member

@kjarosh kjarosh commented Nov 7, 2025

This domain hosts SWZ files and does not work on web due to CORS. This fixes content that requires those SWZ files and the website owner does not provide them. As a bonus we don't have to worry about reliability of fpdownload.adobe.com and the fact that some day it will stop working.

This needed a bit of refactoring of compatibility rules and fetch.

This PR effectively redirects all URLLoader requests from fpdownload.adobe.com to cdn.ruffle.rs which is set up with all SWZs we could find on the Wayback machine. Apparently they include all SWZs used on Flashpoint, so it's a pretty big collection.

Currently all code in Ruffle had to use fetch() directly from the
navigator, which made it difficult to implement generic logic around
fetch.  This patch provides Player::fetch, which can be used for that
purpose.
This informs the player about the context around the fetch.
It allows the player to know whether the fetch expects a SWF or some
other data.
This method is useful for rewriting response URLs in compatibility
rules.
@kjarosh kjarosh requested a review from Dinnerbone November 7, 2025 22:59
@kjarosh kjarosh added A-core Area: Core player, where no other category fits T-feature Type: New Feature (that Flash doesn't have) labels Nov 7, 2025
@kjarosh kjarosh changed the title core: Add compatibility rule to rewrite fpdownload.adobe.com core: Fix CORS issues with fpdownload.adobe.com Nov 7, 2025
This patch adds UrlRewriteStage which tells at what stage the given
URL rewrite should be applied, and does it generically in the common
fetch method.
Different compatibility rules need to be applied during different
fetches, this allows to discriminate against that.
This domain hosts SWZ files and does not work on web due to CORS.
This fixes content that requires those SWZ files and the website owner
does not provide them. As a bonus we don't have to worry about
reliability of fpdownload.adobe.com and the fact that some day it will
stop working.
@kjarosh kjarosh added waiting-on-review Waiting on review from a Ruffle team member newsworthy labels Nov 7, 2025
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 newsworthy T-feature Type: New Feature (that Flash doesn't have) waiting-on-review Waiting on review from a Ruffle team member

Projects

None yet

1 participant