diff options
author | 2025-01-17 17:15:35 +0000 | |
---|---|---|
committer | 2025-01-17 17:15:35 +0000 | |
commit | 3ffc809030ac2088c9d73e98e105607122dee2ef (patch) | |
tree | ba32ab4a4ca3aa7c9b7a966424e7cae53854d5ae /telecomm | |
parent | c271045af8a85acbde459b5d0845c53d312dac9a (diff) |
Add catch block for ClassCastException in areBundlesEqual.
We've now ween a couple cases where a ClassCastException is happening in
the areBundlesEqual method. It is not clear what is causing that issue
so instead of just silently catching this exception, we'll log which key
is causing the problem so we can investigate further.
Test: Compile; run tests -- this is not easily repro.
Flag: NONE crash logs only.
Fixes: 390386486
Bug: 372319846
Change-Id: I96c5d08617487add9ba83de80144ae8b2f74782d
Diffstat (limited to 'telecomm')
-rw-r--r-- | telecomm/java/android/telecom/Call.java | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/telecomm/java/android/telecom/Call.java b/telecomm/java/android/telecom/Call.java index a52614d5cda1..531f51604507 100644 --- a/telecomm/java/android/telecom/Call.java +++ b/telecomm/java/android/telecom/Call.java @@ -52,6 +52,8 @@ import java.util.concurrent.CopyOnWriteArrayList; * Represents an ongoing phone call that the in-call app should present to the user. */ public final class Call { + private static final String LOG_TAG = "TelecomCall"; + /** * The state of a {@code Call} when newly created. */ @@ -2912,6 +2914,11 @@ public final class Call { } } catch (BadParcelableException e) { return false; + } catch (ClassCastException e) { + Log.e(LOG_TAG, e, "areBundlesEqual: failure comparing bundle key %s", key); + // until we know what is causing this, we should rethrow -- this is still not + // expected. + throw e; } } } |