diff options
Diffstat (limited to 'core/java/android')
| -rw-r--r-- | core/java/android/metrics/LogMaker.java | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/core/java/android/metrics/LogMaker.java b/core/java/android/metrics/LogMaker.java index a76a8a0e3da2..3c6baa76558a 100644 --- a/core/java/android/metrics/LogMaker.java +++ b/core/java/android/metrics/LogMaker.java @@ -54,7 +54,11 @@ public class LogMaker { /* Deserialize from the eventlog */ public LogMaker(Object[] items) { - deserialize(items); + if (items != null) { + deserialize(items); + } else { + setCategory(MetricsEvent.VIEW_UNKNOWN); + } } /** @param category to replace the existing setting. */ @@ -373,13 +377,13 @@ public class LogMaker { */ public void deserialize(Object[] items) { int i = 0; - while (i < items.length) { + while (items != null && i < items.length) { Object key = items[i++]; Object value = i < items.length ? items[i++] : null; if (key instanceof Integer) { entries.put((Integer) key, value); } else { - Log.i(TAG, "Invalid key " + key.toString()); + Log.i(TAG, "Invalid key " + (key == null ? "null" : key.toString())); } } } |
