summaryrefslogtreecommitdiff
path: root/java/com/android/dialer/calllog/database/Coalescer.java
diff options
context:
space:
mode:
Diffstat (limited to 'java/com/android/dialer/calllog/database/Coalescer.java')
-rw-r--r--java/com/android/dialer/calllog/database/Coalescer.java12
1 files changed, 10 insertions, 2 deletions
diff --git a/java/com/android/dialer/calllog/database/Coalescer.java b/java/com/android/dialer/calllog/database/Coalescer.java
index 23ddc9c21..55bed3e8c 100644
--- a/java/com/android/dialer/calllog/database/Coalescer.java
+++ b/java/com/android/dialer/calllog/database/Coalescer.java
@@ -133,8 +133,16 @@ public class Coalescer {
DialerPhoneNumber number1;
DialerPhoneNumber number2;
try {
- number1 = DialerPhoneNumber.parseFrom(row1.getAsByteArray(AnnotatedCallLog.NUMBER));
- number2 = DialerPhoneNumber.parseFrom(row2.getAsByteArray(AnnotatedCallLog.NUMBER));
+ byte[] number1Bytes = row1.getAsByteArray(AnnotatedCallLog.NUMBER);
+ byte[] number2Bytes = row2.getAsByteArray(AnnotatedCallLog.NUMBER);
+
+ if (number1Bytes == null || number2Bytes == null) {
+ // Empty numbers should not be combined.
+ return false;
+ }
+
+ number1 = DialerPhoneNumber.parseFrom(number1Bytes);
+ number2 = DialerPhoneNumber.parseFrom(number2Bytes);
} catch (InvalidProtocolBufferException e) {
throw Assert.createAssertionFailException("error parsing DialerPhoneNumber proto", e);
}