Title: [194265] branches/safari-601-branch/Source/WebKit2
- Revision
- 194265
- Author
- [email protected]
- Date
- 2015-12-18 01:59:38 -0800 (Fri, 18 Dec 2015)
Log Message
Merge r188602. rdar://problem/23905024
Modified Paths
Diff
Modified: branches/safari-601-branch/Source/WebKit2/ChangeLog (194264 => 194265)
--- branches/safari-601-branch/Source/WebKit2/ChangeLog 2015-12-18 08:10:53 UTC (rev 194264)
+++ branches/safari-601-branch/Source/WebKit2/ChangeLog 2015-12-18 09:59:38 UTC (rev 194265)
@@ -1,3 +1,24 @@
+2015-12-18 Matthew Hanson <[email protected]>
+
+ Merge r188602. rdar://problem/23905024
+
+ 2015-08-18 Anders Carlsson <[email protected]>
+
+ REGRESSION: Playing audio causes near-instant crash
+ https://bugs.webkit.org/show_bug.cgi?id=148059
+ rdar://problem/22282680
+
+ Reviewed by Sam Weinig.
+
+ The version of WebKit that Safari 6.2.8, 7.1.8 and 8.0.8 built against
+ had an ABI incompatible WKPageUIClientV4 struct. Thankfully we're not going to ship any
+ versions of Safari that use the "normal" WKPageUIClientV4 struct so just assume that it's always the
+ broken one and fix it up by converting it to a WKPageUIClientV5 struct and setting that as the page UI client.
+
+ * UIProcess/API/C/WKPage.cpp:
+ (fixUpBotchedPageUIClient):
+ (WKPageSetPageUIClient):
+
2015-12-17 Babak Shafiei <[email protected]>
Merge r191343.
Modified: branches/safari-601-branch/Source/WebKit2/UIProcess/API/C/WKPage.cpp (194264 => 194265)
--- branches/safari-601-branch/Source/WebKit2/UIProcess/API/C/WKPage.cpp 2015-12-18 08:10:53 UTC (rev 194264)
+++ branches/safari-601-branch/Source/WebKit2/UIProcess/API/C/WKPage.cpp 2015-12-18 09:59:38 UTC (rev 194265)
@@ -1332,7 +1332,6 @@
toImpl(pageRef)->setPolicyClient(std::make_unique<PolicyClient>(wkClient));
}
-#if PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED <= 101000
static void fixUpBotchedPageUIClient(WKPageRef pageRef, const WKPageUIClientBase& wkClient)
{
struct BotchedWKPageUIClientV4 {
@@ -1464,7 +1463,6 @@
WKPageSetPageUIClient(pageRef, &fixedPageUIClient.base);
}
-#endif
namespace WebKit {
@@ -1581,6 +1579,13 @@
void WKPageSetPageUIClient(WKPageRef pageRef, const WKPageUIClientBase* wkClient)
{
+#if PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED <= 101100
+ if (wkClient && wkClient->version == 4) {
+ fixUpBotchedPageUIClient(pageRef, *wkClient);
+ return;
+ }
+#endif
+
class UIClient : public API::Client<WKPageUIClientBase>, public API::UIClient {
public:
explicit UIClient(const WKPageUIClientBase* client)
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes