commit | d9f5d0bc07ef2528def2b420dbbcc9b9f77f1899 | [log] [tgz] |
---|---|---|
author | Christopher Cameron <ccameron@chromium.org> | Mon Aug 13 20:15:22 2018 |
committer | ccameron <ccameron@chromium.org> | Mon Aug 13 20:15:22 2018 |
tree | 337b62aae73df077ce25c90d33007e23cd85a903 | |
parent | 66402cabed51dffda24123681e43b13fd3afb052 [diff] |
CATransactionGPUCoordinator: Re-enable and make lifetime explicit Disalbing the CATransactionGPUCoordinator caused memory corruption bugs to go away. Fix two potential bugs: 1. Don't post tasks (and potentially change the reference count) inside CATransactionGPUCoordinator's constructor. Do this in a separate explicit Init function. 1a. Move this initialization to the end of GpuProcessHost:Init (instead of being at the beginning of the constructor). 2. Make CATransactionCoordinator explicitly retain PostCommitObserver (which includes CATransactionGPUCoordinator). This fixes a bug whereby at shutdown, destroying not-yet-executed posted tasks caused the CATransactionGPUCoordinator to be destroyed while the CATransactionCoordinator still had a raw pointer to it. TBR=ccameron@chromium.org (cherry picked from commit 62892558b716d1560264e42929e2be01ead07e71) Bug: 871430 Change-Id: Ie144071cce9ce48e0187cdaf1fcf32df7b62ed75 Reviewed-on: https://chromium-review.googlesource.com/1171657 Commit-Queue: ccameron <ccameron@chromium.org> Reviewed-by: Antoine Labour <piman@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#582378} Reviewed-on: https://chromium-review.googlesource.com/1173060 Reviewed-by: ccameron <ccameron@chromium.org> Cr-Commit-Position: refs/branch-heads/3497@{#581} Cr-Branched-From: 271eaf50594eb818c9295dc78d364aea18c82ea8-refs/heads/master@{#576753}
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 .