aboutsummaryrefslogtreecommitdiffstats
path: root/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/helper
diff options
context:
space:
mode:
authormar-v-in <github@rvin.mooo.com>2014-07-20 17:09:34 +0200
committermar-v-in <github@rvin.mooo.com>2014-07-20 17:09:34 +0200
commit2913a78b188e81fe6bd91d26fb0ae083cf504bde (patch)
tree69677749c102d3b729ada72b0acabff94de3d285 /OpenKeychain/src/main/java/org/sufficientlysecure/keychain/helper
parentbc9922263ca98e97a8182c72c4bf5b089e512395 (diff)
downloadopen-keychain-2913a78b188e81fe6bd91d26fb0ae083cf504bde.tar.gz
open-keychain-2913a78b188e81fe6bd91d26fb0ae083cf504bde.tar.bz2
open-keychain-2913a78b188e81fe6bd91d26fb0ae083cf504bde.zip
Load of rework on EncryptActivity, still some TODOs
Diffstat (limited to 'OpenKeychain/src/main/java/org/sufficientlysecure/keychain/helper')
-rw-r--r--OpenKeychain/src/main/java/org/sufficientlysecure/keychain/helper/ContactHelper.java21
1 files changed, 13 insertions, 8 deletions
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/helper/ContactHelper.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/helper/ContactHelper.java
index 1b9ef57b3..5d1bd1bb5 100644
--- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/helper/ContactHelper.java
+++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/helper/ContactHelper.java
@@ -236,14 +236,19 @@ public class ContactHelper {
}
public static Bitmap photoFromFingerprint(ContentResolver contentResolver, String fingerprint) {
- int rawContactId = findRawContactId(contentResolver, fingerprint);
- if (rawContactId == -1) return null;
- Uri rawContactUri = ContentUris.withAppendedId(ContactsContract.RawContacts.CONTENT_URI, rawContactId);
- Uri contactUri = ContactsContract.RawContacts.getContactLookupUri(contentResolver, rawContactUri);
- InputStream photoInputStream =
- ContactsContract.Contacts.openContactPhotoInputStream(contentResolver, contactUri);
- if (photoInputStream == null) return null;
- return BitmapFactory.decodeStream(photoInputStream);
+ if (fingerprint == null) return null;
+ try {
+ int rawContactId = findRawContactId(contentResolver, fingerprint);
+ if (rawContactId == -1) return null;
+ Uri rawContactUri = ContentUris.withAppendedId(ContactsContract.RawContacts.CONTENT_URI, rawContactId);
+ Uri contactUri = ContactsContract.RawContacts.getContactLookupUri(contentResolver, rawContactUri);
+ InputStream photoInputStream =
+ ContactsContract.Contacts.openContactPhotoInputStream(contentResolver, contactUri);
+ if (photoInputStream == null) return null;
+ return BitmapFactory.decodeStream(photoInputStream);
+ } catch (Throwable ignored) {
+ return null;
+ }
}
/**