commit | 045230a4329620eac05d439ecb96c0387a72b6a5 | [log] [tgz] |
---|---|---|
author | Charles Chen <charlesccchen@google.com> | Thu Mar 04 17:59:46 2021 +0800 |
committer | Charles Chen <charlesccchen@google.com> | Tue Mar 09 21:39:38 2021 +0800 |
tree | b4c29866f072306f80c54789abbf34f678201c7e | |
parent | 5d3166d40316b7a2864f37a5098f3e9de7ed1021 [diff] |
Fix deadlock between WMG and WMS The dealock happened while WM#addView and WMS holds lock and called onWindowTokenRemoved. WM#addView -> WMG#addView(holds WMG lock) -> ... -> WMS#addWindow(holds WMS lock) (holds WMS lock) ... -> WindowTokenClient#onWindowTokenRemoved ... -> WMG#closeAll(holds WMG lock) This CL calls to WMG#closeAll asynchronously to release WMG lock fixes: 181839758 Test: manual Change-Id: I0cf8a505043a4def4dcf346952873b1362a92084