Skip to content

Commit

Permalink
fail fast handleContactResult
Browse files Browse the repository at this point in the history
Signed-off-by: alperozturk <[email protected]>
  • Loading branch information
alperozturk96 committed Feb 18, 2025
1 parent 7f8cbc7 commit 01df2e3
Showing 1 changed file with 26 additions and 23 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -499,32 +499,35 @@ private void handleContactResult(@NonNull Uri contactUri) {
String[] projection = {ContactsContract.CommonDataKinds.Email.ADDRESS};

Cursor cursor = getContentResolver().query(contactUri, projection, null, null, null);
if (cursor == null) {
DisplayUtils.showSnackMessage(this, getString(R.string.email_pick_failed));
Log_OC.e(TAG, "Failed to pick email address as Cursor is null.");
return;
}

if (cursor != null) {
if (cursor.moveToFirst()) {
// The contact has only one email address, use it.
int columnIndex = cursor.getColumnIndex(ContactsContract.CommonDataKinds.Email.ADDRESS);
if (columnIndex != -1) {
// Use the email address as needed.
// email variable contains the selected contact's email address.
String email = cursor.getString(columnIndex);
binding.searchView.post(() -> {
binding.searchView.setQuery(email, false);
binding.searchView.requestFocus();
});
} else {
DisplayUtils.showSnackMessage(this, getString(R.string.email_pick_failed));
Log_OC.e(NoteShareActivity.class.getSimpleName(), "Failed to pick email address.");
}
} else {
DisplayUtils.showSnackMessage(this, getString(R.string.email_pick_failed));
Log_OC.e(NoteShareActivity.class.getSimpleName(), "Failed to pick email address as no Email found.");
}
cursor.close();
} else {
if (!cursor.moveToFirst()) {
DisplayUtils.showSnackMessage(this, getString(R.string.email_pick_failed));
Log_OC.e(NoteShareActivity.class.getSimpleName(), "Failed to pick email address as Cursor is null.");
Log_OC.e(TAG, "Failed to pick email address as no Email found.");
return;
}

// The contact has only one email address, use it.
int columnIndex = cursor.getColumnIndex(ContactsContract.CommonDataKinds.Email.ADDRESS);
if (columnIndex == -1) {
DisplayUtils.showSnackMessage(this, getString(R.string.email_pick_failed));
Log_OC.e(TAG, "Failed to pick email address.");
return;
}

// Use the email address as needed.
// email variable contains the selected contact's email address.
String email = cursor.getString(columnIndex);
binding.searchView.post(() -> {
binding.searchView.setQuery(email, false);
binding.searchView.requestFocus();
});

cursor.close();
}

private boolean containsNoNewPublicShare(List<OCShare> shares) {
Expand Down

0 comments on commit 01df2e3

Please sign in to comment.