Title: [226203] trunk/Source/WebCore
- Revision
- 226203
- Author
- commit-qu...@webkit.org
- Date
- 2017-12-20 16:13:09 -0800 (Wed, 20 Dec 2017)
Log Message
com.apple.WebKit.WebContent.Development crashed in com.apple.WebCore: WebCore::UserMediaRequest::stop + 126
https://bugs.webkit.org/show_bug.cgi?id=181057
Patch by Youenn Fablet <you...@apple.com> on 2017-12-20
Reviewed by Eric Carlson.
Covered by fast/mediastream tests to not crash anymore.
* Modules/mediastream/UserMediaRequest.cpp:
(WebCore::UserMediaRequest::stop):
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (226202 => 226203)
--- trunk/Source/WebCore/ChangeLog 2017-12-20 22:47:20 UTC (rev 226202)
+++ trunk/Source/WebCore/ChangeLog 2017-12-21 00:13:09 UTC (rev 226203)
@@ -1,3 +1,15 @@
+2017-12-20 Youenn Fablet <you...@apple.com>
+
+ com.apple.WebKit.WebContent.Development crashed in com.apple.WebCore: WebCore::UserMediaRequest::stop + 126
+ https://bugs.webkit.org/show_bug.cgi?id=181057
+
+ Reviewed by Eric Carlson.
+
+ Covered by fast/mediastream tests to not crash anymore.
+
+ * Modules/mediastream/UserMediaRequest.cpp:
+ (WebCore::UserMediaRequest::stop):
+
2017-12-20 Brady Eidson <beid...@apple.com>
Assertion failure in MessagePort::contextDestroyed in http/tests/security/MessagePort/event-listener-context.html, usually attributed to later tests.
Modified: trunk/Source/WebCore/Modules/mediastream/UserMediaRequest.cpp (226202 => 226203)
--- trunk/Source/WebCore/Modules/mediastream/UserMediaRequest.cpp 2017-12-20 22:47:20 UTC (rev 226202)
+++ trunk/Source/WebCore/Modules/mediastream/UserMediaRequest.cpp 2017-12-21 00:13:09 UTC (rev 226203)
@@ -277,15 +277,14 @@
void UserMediaRequest::stop()
{
- auto& document = downcast<Document>(*m_scriptExecutionContext);
- auto* controller = UserMediaController::from(document.page());
+ // Protecting 'it'this' since nulling m_pendingActivationMediaStream might destroy it.
+ Ref<UserMediaRequest> protectedThis(*this);
m_pendingActivationMediaStream = nullptr;
- if (!controller)
- return;
- Ref<UserMediaRequest> protectedThis(*this);
- controller->cancelUserMediaAccessRequest(*this);
+ auto& document = downcast<Document>(*m_scriptExecutionContext);
+ if (auto* controller = UserMediaController::from(document.page()))
+ controller->cancelUserMediaAccessRequest(*this);
}
const char* UserMediaRequest::activeDOMObjectName() const
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes