Title: [256377] trunk
- Revision
- 256377
- Author
- you...@apple.com
- Date
- 2020-02-11 14:53:08 -0800 (Tue, 11 Feb 2020)
Log Message
Regression: RTCRtpSender.getCapabilities("video") returns null on iOS 13.4 (17E5223h)
https://bugs.webkit.org/show_bug.cgi?id=207325
<rdar://problem/59224810>
Reviewed by Eric Carlson.
Source/WebCore:
Manually tested and covered by API test.
* platform/mediastream/libwebrtc/LibWebRTCProviderCocoa.cpp:
(WebCore::LibWebRTCProvider::webRTCAvailable):
Return true unconditionally on iOS since libwebrtc.dylib is always available.
Tools:
* TestWebKitAPI/Tests/WebKit/GetUserMedia.mm:
(TestWebKitAPI::TEST):
Add a test validating that RTCRtpSender.getCapabilities does not return null.
* TestWebKitAPI/Tests/WebKit/getUserMedia.html:
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (256376 => 256377)
--- trunk/Source/WebCore/ChangeLog 2020-02-11 22:50:47 UTC (rev 256376)
+++ trunk/Source/WebCore/ChangeLog 2020-02-11 22:53:08 UTC (rev 256377)
@@ -1,3 +1,17 @@
+2020-02-11 Youenn Fablet <you...@apple.com>
+
+ Regression: RTCRtpSender.getCapabilities("video") returns null on iOS 13.4 (17E5223h)
+ https://bugs.webkit.org/show_bug.cgi?id=207325
+ <rdar://problem/59224810>
+
+ Reviewed by Eric Carlson.
+
+ Manually tested and covered by API test.
+
+ * platform/mediastream/libwebrtc/LibWebRTCProviderCocoa.cpp:
+ (WebCore::LibWebRTCProvider::webRTCAvailable):
+ Return true unconditionally on iOS since libwebrtc.dylib is always available.
+
2020-02-11 Peng Liu <peng.l...@apple.com>
Cleanup WebCore.xcodeproj/project.pbxproj
Modified: trunk/Source/WebCore/platform/mediastream/libwebrtc/LibWebRTCProviderCocoa.cpp (256376 => 256377)
--- trunk/Source/WebCore/platform/mediastream/libwebrtc/LibWebRTCProviderCocoa.cpp 2020-02-11 22:50:47 UTC (rev 256376)
+++ trunk/Source/WebCore/platform/mediastream/libwebrtc/LibWebRTCProviderCocoa.cpp 2020-02-11 22:53:08 UTC (rev 256377)
@@ -73,7 +73,11 @@
bool LibWebRTCProvider::webRTCAvailable()
{
+#if PLATFORM(IOS)
+ return true;
+#else
return !isNullFunctionPointer(rtc::LogMessage::LogToDebug);
+#endif
}
} // namespace WebCore
Modified: trunk/Tools/ChangeLog (256376 => 256377)
--- trunk/Tools/ChangeLog 2020-02-11 22:50:47 UTC (rev 256376)
+++ trunk/Tools/ChangeLog 2020-02-11 22:53:08 UTC (rev 256377)
@@ -1,3 +1,16 @@
+2020-02-11 Youenn Fablet <you...@apple.com>
+
+ Regression: RTCRtpSender.getCapabilities("video") returns null on iOS 13.4 (17E5223h)
+ https://bugs.webkit.org/show_bug.cgi?id=207325
+ <rdar://problem/59224810>
+
+ Reviewed by Eric Carlson.
+
+ * TestWebKitAPI/Tests/WebKit/GetUserMedia.mm:
+ (TestWebKitAPI::TEST):
+ Add a test validating that RTCRtpSender.getCapabilities does not return null.
+ * TestWebKitAPI/Tests/WebKit/getUserMedia.html:
+
2020-02-11 Wenson Hsieh <wenson_hs...@apple.com>
KeyboardInputTests.SupportsImagePaste fails on recent versions of UIKit
Modified: trunk/Tools/TestWebKitAPI/Tests/WebKit/GetUserMedia.mm (256376 => 256377)
--- trunk/Tools/TestWebKitAPI/Tests/WebKit/GetUserMedia.mm 2020-02-11 22:50:47 UTC (rev 256376)
+++ trunk/Tools/TestWebKitAPI/Tests/WebKit/GetUserMedia.mm 2020-02-11 22:53:08 UTC (rev 256377)
@@ -201,6 +201,35 @@
wasPrompted = false;
}
+TEST(WebKit2, GetCapabilities)
+{
+ auto configuration = adoptNS([[WKWebViewConfiguration alloc] init]);
+ auto processPoolConfig = adoptNS([[_WKProcessPoolConfiguration alloc] init]);
+ auto preferences = [configuration preferences];
+ preferences._mediaCaptureRequiresSecureConnection = NO;
+ preferences._mediaDevicesEnabled = YES;
+ preferences._mockCaptureDevicesEnabled = YES;
+
+ auto messageHandler = adoptNS([[GUMMessageHandler alloc] init]);
+ [[configuration.get() userContentController] addScriptMessageHandler:messageHandler.get() name:@"gum"];
+
+ auto webView = [[TestWKWebView alloc] initWithFrame:CGRectMake(0, 0, 320, 500) configuration:configuration.get() processPoolConfiguration:processPoolConfig.get()];
+ auto delegate = adoptNS([[GetUserMediaCaptureUIDelegate alloc] init]);
+ webView.UIDelegate = delegate.get();
+
+ wasPrompted = false;
+
+ [webView loadTestPageNamed:@"getUserMedia"];
+ EXPECT_TRUE(waitUntilCaptureState(webView, _WKMediaCaptureStateActiveCamera));
+
+ TestWebKitAPI::Util::run(&wasPrompted);
+
+ done = false;
+ [webView stringByEvaluatingJavaScript:@"checkGetCapabilities()"];
+
+ TestWebKitAPI::Util::run(&done);
+}
+
#if WK_HAVE_C_SPI
TEST(WebKit, WebAudioAndGetUserMedia)
{
Modified: trunk/Tools/TestWebKitAPI/Tests/WebKit/getUserMedia.html (256376 => 256377)
--- trunk/Tools/TestWebKitAPI/Tests/WebKit/getUserMedia.html 2020-02-11 22:50:47 UTC (rev 256376)
+++ trunk/Tools/TestWebKitAPI/Tests/WebKit/getUserMedia.html 2020-02-11 22:53:08 UTC (rev 256377)
@@ -87,6 +87,11 @@
window.webkit.messageHandlers.gum.postMessage("Did not receive an ended event after 5 seconds");
}, 5000);
}
+
+ function checkGetCapabilities() {
+ window.webkit.messageHandlers.gum.postMessage(RTCRtpSender.getCapabilities('video') != null ? "PASS" : "FAIL");
+ }
+
</script>
<head>
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes