summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTyler Gunn <tgunn@google.com>2014-12-10 22:29:55 +0000
committerAndroid Git Automerger <android-git-automerger@android.com>2014-12-10 22:29:55 +0000
commitf23edeed7bb99d38abbe19d54a4d8c72c564f4e2 (patch)
tree4bbaabe738148bbcf83d577e7677a29bb5133be5
parentbc1d75a35e7b351ab0e183f81faa2a4cf5b2cfee (diff)
parent10d7f02d122564e91dafea3e410a651b04193691 (diff)
am 10d7f02d: am 9e257b37: am 5c52bb88: Fix potential NPE when generating accessibility text.
* commit '10d7f02d122564e91dafea3e410a651b04193691': Fix potential NPE when generating accessibility text.
-rw-r--r--src/com/android/dialer/calllog/CallLogListItemHelper.java22
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));
}
/**