Catch NPE thrown by APN provider.

This commit is contained in:
Moxie Marlinspike 2013-03-17 11:19:36 -07:00
parent 2d92b99fb3
commit fb21c09dbe

View File

@ -473,7 +473,14 @@ public class MmsDatabase extends Database {
String selection = Util.isEmpty(apn) ? null : "apn = ?";
String[] selectionArgs = Util.isEmpty(apn) ? null : new String[] {apn.trim()};
return context.getContentResolver().query(uri, null, selection, selectionArgs, null);
try {
return context.getContentResolver().query(uri, null, selection, selectionArgs, null);
} catch (NullPointerException npe) {
// NOTE - This is dumb, but on some devices there's an NPE in the Android framework
// for the provider of this call, which gets rethrown back to here through a binder
// call.
throw new IllegalArgumentException(npe);
}
}
private PduHeaders getHeadersForId(long messageId) throws MmsException {