commit | ebcf9595bf908b515ffcd31374b071697a69faed | [log] [tgz] |
---|---|---|
author | Raymond Toy <rtoy@chromium.org> | Mon Jan 22 17:03:07 2018 |
committer | Commit Bot <commit-bot@chromium.org> | Mon Jan 22 17:03:07 2018 |
tree | 1c091f3d8fa9487911278b912132e3ece3d6d14c | |
parent | ee539faa0097eef30896260458f02039b979125b [diff] |
Keep AudioHandlers alive until they can be safely deleted. When an AudioNode is disposed, the handler is also disposed. But add the handler to the orphan list so that the handler stays alive until the context can safely delete it. If we don't do this, the handler may get deleted while the audio thread is processing the handler (due to, say, channel count changes and such). For an realtime context, save the handler if the context is not closed. (Nothing will clean up the handler if the context is closed.) For an offline context, only need to do this when the context is running because the context is guaranteed to be stopped if we're not in the running state. Hence, there's no possibility of deleting the handler while the graph is running. Bug: 780919 Change-Id: Id8ba47f48504c5681121facebfc5acb85b05de87 Reviewed-on: https://chromium-review.googlesource.com/868841 Reviewed-by: Hongchan Choi <hongchan@chromium.org> Commit-Queue: Raymond Toy <rtoy@chromium.org> Cr-Commit-Position: refs/heads/master@{#530892}
Chromium is an open-source browser project that aims to build a safer, faster, and more stable way for all users to experience the web.
The project's web site is https://www.chromium.org.
Documentation in the source is rooted in docs/README.md.
Learn how to Get Around the Chromium Source Code Directory Structure .