Merge "Add one more check for detecting crashes while inflating multiuser widget" into jb-mr1-lockscreen-dev
diff --git a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardHostView.java b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardHostView.java
index 8dde208..e89888c 100644
--- a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardHostView.java
+++ b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardHostView.java
@@ -1311,7 +1311,7 @@
         if (!UserManager.supportsMultipleUsers()) {
             return; // device doesn't support multi-user mode
         }
-        UserManager um = (UserManager) mContext.getSystemService(Context.USER_SERVICE);
+        final UserManager um = (UserManager) mContext.getSystemService(Context.USER_SERVICE);
         if (um == null) {
             Throwable t = new Throwable();
             t.fillInStackTrace();
@@ -1320,7 +1320,7 @@
         }
 
         // if there are multiple users, we need to enable to multi-user switcher
-        List<UserInfo> users = um.getUsers(true);
+        final List<UserInfo> users = um.getUsers(true);
         if (users == null) {
             Throwable t = new Throwable();
             t.fillInStackTrace();
@@ -1328,8 +1328,15 @@
             return;
         }
 
+        final View multiUserView = findViewById(R.id.keyguard_user_selector);
+        if (multiUserView == null) {
+            Throwable t = new Throwable();
+            t.fillInStackTrace();
+            Log.e(TAG, "can't find user_selector in layout.", t);
+            return;
+        }
+
         if (users.size() > 1) {
-            View multiUserView = findViewById(R.id.keyguard_user_selector);
             if (multiUserView instanceof KeyguardMultiUserSelectorView) {
                 KeyguardMultiUserSelectorView multiUser =
                         (KeyguardMultiUserSelectorView) multiUserView;