diff options
| author | 2017-08-01 18:33:41 +0000 | |
|---|---|---|
| committer | 2017-08-01 18:33:41 +0000 | |
| commit | a41c839d55510bf91b47cd7e1724ebfc3ed2acf5 (patch) | |
| tree | b0e79c06bf1f5fe2ca9edfd2be18ff74da91a5c8 /services/java | |
| parent | d30bbfa794a9e1efddc45ed1c544460eb23bbcb2 (diff) | |
| parent | b7ac4ca5a8997f428bc4c892b87aff70aa80a15d (diff) | |
Merge "Move ShutdownThread calls to system ui thread." into oc-dr1-dev am: 39a556f1d8
am: b7ac4ca5a8
Change-Id: I320e50928e251d62fcbe852e13c8d87792aad81c
Diffstat (limited to 'services/java')
| -rw-r--r-- | services/java/com/android/server/SystemServer.java | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/services/java/com/android/server/SystemServer.java b/services/java/com/android/server/SystemServer.java index 6090bee5d69b..d67bf63eac39 100644 --- a/services/java/com/android/server/SystemServer.java +++ b/services/java/com/android/server/SystemServer.java @@ -34,6 +34,7 @@ import android.os.FactoryTest; import android.os.FileUtils; import android.os.IIncidentManager; import android.os.Looper; +import android.os.Message; import android.os.PowerManager; import android.os.Process; import android.os.RemoteException; @@ -454,7 +455,20 @@ public final class SystemServer { } } } - ShutdownThread.rebootOrShutdown(null, reboot, reason); + Runnable runnable = new Runnable() { + @Override + public void run() { + synchronized (this) { + ShutdownThread.rebootOrShutdown(null, reboot, reason); + } + } + }; + + // ShutdownThread must run on a looper capable of displaying the UI. + Message msg = Message.obtain(UiThread.getHandler(), runnable); + msg.setAsynchronous(true); + UiThread.getHandler().sendMessage(msg); + } } |