summaryrefslogtreecommitdiff
path: root/libs/gui/BLASTBufferQueue.cpp
diff options
context:
space:
mode:
author Prabir Pradhan <prabirmsp@google.com> 2024-01-09 23:10:13 +0000
committer Prabir Pradhan <prabirmsp@google.com> 2024-01-09 23:20:45 +0000
commitb13da8fa00af57b14318fb5b0ce64d6c700852ad (patch)
tree169339efc07636433b91d48aeff069295e0d0ba3 /libs/gui/BLASTBufferQueue.cpp
parentafb7d61d836667787c5e0b083be435a41c843126 (diff)
InputDispatcher: Do not synthesize cancelations for zombie connections
When an input channel is removed, we mark it as a zombie connection in Dispatcher. Whenever we leave a critical section inside Dispatcher, it is possible for an input channel to be removed. When handling fallback keys, we make a policy call synchronously while processing the unhandled key by releasing the lock. After returning from the policy call, it's possible the input channel was removed, leaving the connection in a zombie state. When in this state, if we try to synthesize a cancelation event, we would end up crashing. To avoid this, ensure we don't try to synthesize cancelations for channels that aren't normal (i.e. broken or zombie channels). Bug: 319186639 Test: atest inputflinger_tests Change-Id: I05a9b001de19bf26d81ea50a511d84bc3a2045d2
Diffstat (limited to 'libs/gui/BLASTBufferQueue.cpp')
0 files changed, 0 insertions, 0 deletions