Run constraints processing for video device capture on the main thread |
||
Issue descriptionWhile preparing a new browser test for screen capture, we discovered that there was a code path in the constraints-processing algorithm that tried to use a Blink string from the worker thread. See bug 791992 For device capture we have many browser and layout tests and we have not reached this problem. However, it seems prudent to run the algorithm on the main thread in order to avoid issues in the future.
,
Dec 5 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/5daa323d0874f67abf73414cf556eb99a3817d2e commit 5daa323d0874f67abf73414cf556eb99a3817d2e Author: Guido Urdaneta <guidou@chromium.org> Date: Tue Dec 05 19:42:53 2017 Run constraints processing for video-device capture on the main thread The constraints processing algorithm operates on data coming directly from Blink, and it may happen that a future change accesses a string or some other data that is allowed to be accessed only from the main thread. So far no such bug has been found for device capture, but one was recently discovered for screen capture. See http://crbug.com/791992 . The original motivation to run constraints processing on the worker thread was to avoid blocking the main thread in case the algorithm took too long to run, but in practice we have not observed significant performance issues. Bug: 792106 Change-Id: I5fa6f9e1b107e680cb4a5b544488fe7f2d8bfb0d Reviewed-on: https://chromium-review.googlesource.com/809011 Reviewed-by: Henrik Boström <hbos@chromium.org> Reviewed-by: Avi Drissman <avi@chromium.org> Commit-Queue: Guido Urdaneta <guidou@chromium.org> Cr-Commit-Position: refs/heads/master@{#521790} [modify] https://crrev.com/5daa323d0874f67abf73414cf556eb99a3817d2e/content/renderer/media/user_media_client_impl.cc [modify] https://crrev.com/5daa323d0874f67abf73414cf556eb99a3817d2e/content/renderer/media/user_media_client_impl.h [modify] https://crrev.com/5daa323d0874f67abf73414cf556eb99a3817d2e/content/renderer/media/user_media_client_impl_unittest.cc [modify] https://crrev.com/5daa323d0874f67abf73414cf556eb99a3817d2e/content/renderer/media/user_media_processor.cc [modify] https://crrev.com/5daa323d0874f67abf73414cf556eb99a3817d2e/content/renderer/media/user_media_processor.h [modify] https://crrev.com/5daa323d0874f67abf73414cf556eb99a3817d2e/content/renderer/render_frame_impl.cc
,
Jan 18 2018
|
||
►
Sign in to add a comment |
||
Comment 1 by guidou@chromium.org
, Dec 5 2017