Merge "Handle exceptions when accessing Content providers." into mnc-dev

This commit is contained in:
Roshan Pius
2015-07-15 19:23:28 +00:00
committed by Android (Google) Code Review
2 changed files with 22 additions and 10 deletions

View File

@@ -177,15 +177,19 @@ public class PhoneNumberUtils
phoneColumn = ContactsContract.CommonDataKinds.Phone.NUMBER;
}
final Cursor c = context.getContentResolver().query(uri, new String[] {
phoneColumn
}, null, null, null);
if (c != null) {
try {
Cursor c = null;
try {
c = context.getContentResolver().query(uri, new String[] { phoneColumn },
null, null, null);
if (c != null) {
if (c.moveToFirst()) {
number = c.getString(c.getColumnIndex(phoneColumn));
}
} finally {
}
} catch (RuntimeException e) {
Rlog.e(LOG_TAG, "Error getting phone number.", e);
} finally {
if (c != null) {
c.close();
}
}

View File

@@ -16,6 +16,7 @@
package com.android.internal.telephony;
import android.content.ContentResolver;
import android.content.Context;
import android.database.Cursor;
import android.graphics.Bitmap;
@@ -282,10 +283,17 @@ public class CallerInfo {
* number. The returned CallerInfo is null if no number is supplied.
*/
public static CallerInfo getCallerInfo(Context context, Uri contactRef) {
return getCallerInfo(context, contactRef,
CallerInfoAsyncQuery.getCurrentProfileContentResolver(context)
.query(contactRef, null, null, null, null));
CallerInfo info = null;
ContentResolver cr = CallerInfoAsyncQuery.getCurrentProfileContentResolver(context);
if (cr != null) {
try {
info = getCallerInfo(context, contactRef,
cr.query(contactRef, null, null, null, null));
} catch (RuntimeException re) {
Rlog.e(TAG, "Error getting caller info.", re);
}
}
return info;
}
/**