API::PageConfiguration::copy() is error-prone as it is too easy to add a data member and forget to copy it in this function (Like in 264609@main).
Pull request: https://github.com/WebKit/WebKit/pull/14411
Committed 264689@main (ecce6504d149): <https://commits.webkit.org/264689@main> Reviewed commits have been landed. Closing PR #14411 and removing active labels.
<rdar://problem/110017496>
For reference, the autoplay disabling added in bug 184845 for GLib ports was not working on WPE before this change (but it was fine on GTK). Before 264689@main from this bug, the following fields were not copied properly: - m_additionalSupportedImageTypes - m_defaultWebsitePolicies - m_pageToCloneSessionStorageFrom Since m_defaultWebsitePolicies was not copied, and WKWPE::View::View() uses API::PageConfiguration::copy() to prepare the WebView configuration for WPE, it missed the autoplay setting passed by the glib code, defaulting to WebsiteAutoplayPolicy::AllowWithoutSound / WEBKIT_AUTOPLAY_ALLOW_WITHOUT_SOUND. As of WPE 2.42, the autoplay feature is now properly AllowWithoutSound by default. Some embedded ports might have to change their application settings if they need autoplay to be enabled by default.