diff options
author | Tyler Gunn <tgunn@google.com> | 2014-12-10 22:21:50 +0000 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2014-12-10 22:21:50 +0000 |
commit | 10d7f02d122564e91dafea3e410a651b04193691 (patch) | |
tree | b44e84e403d40b34d40830ab19f884fa7716fa06 | |
parent | 956e41b9362b3dfabc3b6ffcb696d7f429b91b92 (diff) | |
parent | 9e257b37b22e369b898d32dbf4c79e83a7b049c9 (diff) |
am 9e257b37: am 5c52bb88: Fix potential NPE when generating accessibility text.
* commit '9e257b37b22e369b898d32dbf4c79e83a7b049c9':
Fix potential NPE when generating accessibility text.
-rw-r--r-- | src/com/android/dialer/calllog/CallLogListItemHelper.java | 22 |
1 files changed, 15 insertions, 7 deletions
diff --git a/src/com/android/dialer/calllog/CallLogListItemHelper.java b/src/com/android/dialer/calllog/CallLogListItemHelper.java index 793a1755c..77ad333d9 100644 --- a/src/com/android/dialer/calllog/CallLogListItemHelper.java +++ b/src/com/android/dialer/calllog/CallLogListItemHelper.java @@ -21,6 +21,7 @@ import android.content.res.Resources; import android.provider.CallLog.Calls; import android.text.SpannableStringBuilder; import android.text.TextUtils; +import android.util.Log; import com.android.contacts.common.CallUtil; import com.android.dialer.PhoneCallDetails; @@ -31,6 +32,8 @@ import com.android.dialer.R; * Helper class to fill in the views of a call log entry. */ /* package */class CallLogListItemHelper { + private static final String TAG = "CallLogListItemHelper"; + /** Helper for populating the details of a phone call. */ private final PhoneCallDetailsHelper mPhoneCallDetailsHelper; /** Helper for handling phone numbers. */ @@ -79,25 +82,30 @@ import com.android.dialer.R; * @param views The views associated with the current call log entry. */ public void setActionContentDescriptions(CallLogListItemViews views) { + if (views.nameOrNumber == null) { + Log.e(TAG, "setActionContentDescriptions; name or number is null."); + } + + // Calling expandTemplate with a null parameter will cause a NullPointerException. + // Although we don't expect a null name or number, it is best to protect against it. + CharSequence nameOrNumber = views.nameOrNumber == null ? "" : views.nameOrNumber; + views.callBackButtonView.setContentDescription( TextUtils.expandTemplate( - mResources.getString(R.string.description_call_back_action), - views.nameOrNumber)); + mResources.getString(R.string.description_call_back_action), nameOrNumber)); views.videoCallButtonView.setContentDescription( TextUtils.expandTemplate( mResources.getString(R.string.description_video_call_action), - views.nameOrNumber)); + nameOrNumber)); views.voicemailButtonView.setContentDescription( TextUtils.expandTemplate( - mResources.getString(R.string.description_voicemail_action), - views.nameOrNumber)); + mResources.getString(R.string.description_voicemail_action), nameOrNumber)); views.detailsButtonView.setContentDescription( TextUtils.expandTemplate( - mResources.getString(R.string.description_details_action), - views.nameOrNumber)); + mResources.getString(R.string.description_details_action), nameOrNumber)); } /** |