RESOLVED FIXED 154029
checkValidity() sometimes asserts in WebUserMediaClient::pageDestroyed
https://bugs.webkit.org/show_bug.cgi?id=154029
Summary checkValidity() sometimes asserts in WebUserMediaClient::pageDestroyed
Eric Carlson
Reported 2016-02-09 08:21:07 PST
webkitGetUserMedia-shadowing-then.html sometimes triggers an assertion while enumerating the request map.
Attachments
Proposed patch. (4.58 KB, patch)
2016-02-09 08:39 PST, Eric Carlson
no flags
Updated patch. (4.58 KB, patch)
2016-02-09 08:53 PST, Eric Carlson
no flags
Eric Carlson
Comment 1 2016-02-09 08:39:16 PST
Created attachment 270927 [details] Proposed patch.
Eric Carlson
Comment 2 2016-02-09 08:39:41 PST
Eric Carlson
Comment 3 2016-02-09 08:53:47 PST
Created attachment 270929 [details] Updated patch.
Alex Christensen
Comment 4 2016-02-09 08:57:34 PST
Comment on attachment 270929 [details] Updated patch. View in context: https://bugs.webkit.org/attachment.cgi?id=270929&action=review r=me > Source/WebKit/mac/WebCoreSupport/WebUserMediaClient.mm:118 > + ASSERT(userMediaRequestsMap().isEmpty()); These assertions seem kind of silly after calling clear, and they could be right after the call to clear, unless you are actually asserting that the map is still empty after calling cancelUserMediaAccessRequest on each request that used to be in the map.
Eric Carlson
Comment 5 2016-02-09 09:11:49 PST
Comment on attachment 270929 [details] Updated patch. View in context: https://bugs.webkit.org/attachment.cgi?id=270929&action=review >> Source/WebKit/mac/WebCoreSupport/WebUserMediaClient.mm:118 >> + ASSERT(userMediaRequestsMap().isEmpty()); > > These assertions seem kind of silly after calling clear, and they could be right after the call to clear, unless you are actually asserting that the map is still empty after calling cancelUserMediaAccessRequest on each request that used to be in the map. That is the idea, assert that the map is still empty after cancelling the requests to ensure that no new ones were added. This isn't currently possible, but if a future change enabled JS to run it could be.
Eric Carlson
Comment 6 2016-02-09 09:14:17 PST
Note You need to log in before you can comment on or make changes to this bug.