Loading
Quick fix for possible deadlock in LMS
LMS dispatches in-process location events while holding locks, which can lead to deadlock if combined with another lock. This went from a possibility to a definitive deadlock with the introduction of the getCurrentLocation cancel() API. This fix prevents that deadlock by not holding a lock while canceling. It is still technically possible for other components to introduce deadlock by using their own locks within the system process, but as there are very few location clients inside the system server, and none of them appear to be at risk right now, a complete fix is delayed until S. Bug: 149780283 Test: presubmits Change-Id: I9d202adc65380881969d276c470ef1bf52828e82