diff --git a/src/com/android/settings/users/UserPreference.java b/src/com/android/settings/users/UserPreference.java
index d87d78e..3603d44 100644
--- a/src/com/android/settings/users/UserPreference.java
+++ b/src/com/android/settings/users/UserPreference.java
@@ -40,18 +40,22 @@
     public static final int USERID_UNKNOWN = -10;
     public static final int USERID_GUEST_DEFAULTS = -11;
     public static final Comparator<UserPreference> SERIAL_NUMBER_COMPARATOR =
-            new Comparator<UserPreference>() {
-                @Override
-                public int compare(UserPreference p1, UserPreference p2) {
-                    int sn1 = p1.getSerialNumber();
-                    int sn2 = p2.getSerialNumber();
-                    if (sn1 < sn2) {
-                        return -1;
-                    } else if (sn1 > sn2) {
-                        return 1;
-                    }
-                    return 0;
+            (p1, p2) -> {
+
+                if (p1 == null) {
+                    return -1;
                 }
+                else if (p2 == null) {
+                    return 1;
+                }
+                int sn1 = p1.getSerialNumber();
+                int sn2 = p2.getSerialNumber();
+                if (sn1 < sn2) {
+                    return -1;
+                } else if (sn1 > sn2) {
+                    return 1;
+                }
+                return 0;
             };
 
     private OnClickListener mDeleteClickListener;
