diff --git a/src/com/android/launcher3/util/ConfigMonitor.java b/src/com/android/launcher3/util/ConfigMonitor.java index 611931d28a..5dd0d08d67 100644 --- a/src/com/android/launcher3/util/ConfigMonitor.java +++ b/src/com/android/launcher3/util/ConfigMonitor.java @@ -111,8 +111,12 @@ public class ConfigMonitor extends BroadcastReceiver implements DisplayListener private void killProcess() { Log.d(TAG, "restarting launcher"); - mContext.unregisterReceiver(this); - mContext.getSystemService(DisplayManager.class).unregisterDisplayListener(this); + try { + mContext.unregisterReceiver(this); + mContext.getSystemService(DisplayManager.class).unregisterDisplayListener(this); + } catch (Exception e) { + // We are going to die anyway, ignore any error die to race condition in registering. + } android.os.Process.killProcess(android.os.Process.myPid()); }