Fix #2320798: Device hang then runtime restart
The system_server process is deadlocking between event dispatch and window manager code. This change fixes the lock scoping to eliminate the deadlock. Change-Id: I00f029e4d51d7432119ad3aeec260df215b52546
This commit is contained in:
@ -6011,6 +6011,7 @@ public class WindowManagerService extends IWindowManager.Stub
|
|||||||
res.offsetLocation(-win.mFrame.left, -win.mFrame.top);
|
res.offsetLocation(-win.mFrame.left, -win.mFrame.top);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (res != null && returnWhat == RETURN_PENDING_POINTER) {
|
if (res != null && returnWhat == RETURN_PENDING_POINTER) {
|
||||||
synchronized (mWindowMap) {
|
synchronized (mWindowMap) {
|
||||||
@ -6021,7 +6022,6 @@ public class WindowManagerService extends IWindowManager.Stub
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user