From 905b674e40eae31617c04aa5e95f286a5cdd26e5 Mon Sep 17 00:00:00 2001 From: Hsiaoan Hsu Date: Thu, 19 Nov 2020 19:34:51 +0800 Subject: [PATCH] Add a null check for mDefaultQos in DataCallResponse.writeToParcel() java.lang.NullPointerException: Attempt to invoke virtual method 'int android.telephony.data.Qos.getType()' on a null object reference Bug: 173667436 Test: Basic data and Iwlan/VoLTE handover test. Change-Id: I6045ac9fa4e757eea74389002d0d443d20459d46 --- .../java/android/telephony/data/DataCallResponse.java | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/telephony/java/android/telephony/data/DataCallResponse.java b/telephony/java/android/telephony/data/DataCallResponse.java index 623c4e20b3e16..090c970c2b53a 100644 --- a/telephony/java/android/telephony/data/DataCallResponse.java +++ b/telephony/java/android/telephony/data/DataCallResponse.java @@ -487,10 +487,14 @@ public final class DataCallResponse implements Parcelable { dest.writeInt(mMtuV6); dest.writeInt(mHandoverFailureMode); dest.writeInt(mPduSessionId); - if (mDefaultQos.getType() == Qos.QOS_TYPE_EPS) { - dest.writeParcelable((EpsQos)mDefaultQos, flags); + if (mDefaultQos != null) { + if (mDefaultQos.getType() == Qos.QOS_TYPE_EPS) { + dest.writeParcelable((EpsQos) mDefaultQos, flags); + } else { + dest.writeParcelable((NrQos) mDefaultQos, flags); + } } else { - dest.writeParcelable((NrQos)mDefaultQos, flags); + dest.writeParcelable(null, flags); } dest.writeList(mQosSessions); }