Fix some illegal state exceptions
This commit is contained in:
parent
688c5f545b
commit
f924e7d40c
|
@ -226,8 +226,9 @@ public class ViewKeyKeybaseFragment extends LoaderFragment implements
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// look for evidence from keybase in the background, make tabular version of result
|
/**
|
||||||
//
|
* look for evidence from keybase in the background, make tabular version of result
|
||||||
|
*/
|
||||||
private class DescribeKey extends AsyncTask<String, Void, ResultPage> {
|
private class DescribeKey extends AsyncTask<String, Void, ResultPage> {
|
||||||
ParcelableProxy mParcelableProxy;
|
ParcelableProxy mParcelableProxy;
|
||||||
|
|
||||||
|
@ -270,7 +271,12 @@ public class ViewKeyKeybaseFragment extends LoaderFragment implements
|
||||||
} catch (KeybaseException ignored) {
|
} catch (KeybaseException ignored) {
|
||||||
}
|
}
|
||||||
|
|
||||||
return new ResultPage(getString(R.string.key_trust_results_prefix), proofList);
|
String prefix = "";
|
||||||
|
if (isAdded()) {
|
||||||
|
prefix = getString(R.string.key_trust_results_prefix);
|
||||||
|
}
|
||||||
|
|
||||||
|
return new ResultPage(prefix, proofList);
|
||||||
}
|
}
|
||||||
|
|
||||||
private SpannableStringBuilder formatSpannableString(SpannableStringBuilder proofLinks, String proofType) {
|
private SpannableStringBuilder formatSpannableString(SpannableStringBuilder proofLinks, String proofType) {
|
||||||
|
@ -295,7 +301,10 @@ public class ViewKeyKeybaseFragment extends LoaderFragment implements
|
||||||
if (haveProofFor(proof.getType())) {
|
if (haveProofFor(proof.getType())) {
|
||||||
ssb.append("\u00a0[");
|
ssb.append("\u00a0[");
|
||||||
startAt = ssb.length();
|
startAt = ssb.length();
|
||||||
String verify = getString(R.string.keybase_verify);
|
String verify = "";
|
||||||
|
if (isAdded()) {
|
||||||
|
verify = getString(R.string.keybase_verify);
|
||||||
|
}
|
||||||
ssb.append(verify);
|
ssb.append(verify);
|
||||||
ClickableSpan clicker = new ClickableSpan() {
|
ClickableSpan clicker = new ClickableSpan() {
|
||||||
@Override
|
@Override
|
||||||
|
@ -312,6 +321,11 @@ public class ViewKeyKeybaseFragment extends LoaderFragment implements
|
||||||
@Override
|
@Override
|
||||||
protected void onPostExecute(ResultPage result) {
|
protected void onPostExecute(ResultPage result) {
|
||||||
super.onPostExecute(result);
|
super.onPostExecute(result);
|
||||||
|
// stop if fragment is no longer added to an activity
|
||||||
|
if(!isAdded()) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
if (result.mProofs.isEmpty()) {
|
if (result.mProofs.isEmpty()) {
|
||||||
result.mHeader = getActivity().getString(R.string.key_trust_no_cloud_evidence);
|
result.mHeader = getActivity().getString(R.string.key_trust_no_cloud_evidence);
|
||||||
}
|
}
|
||||||
|
@ -360,7 +374,12 @@ public class ViewKeyKeybaseFragment extends LoaderFragment implements
|
||||||
default:
|
default:
|
||||||
stringIndex = R.string.keybase_narrative_unknown;
|
stringIndex = R.string.keybase_narrative_unknown;
|
||||||
}
|
}
|
||||||
return getActivity().getString(stringIndex);
|
|
||||||
|
if (isAdded()) {
|
||||||
|
return getString(stringIndex);
|
||||||
|
} else {
|
||||||
|
return "";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void appendIfOK(Hashtable<Integer, ArrayList<Proof>> table, Integer proofType, Proof proof) throws KeybaseException {
|
private void appendIfOK(Hashtable<Integer, ArrayList<Proof>> table, Integer proofType, Proof proof) throws KeybaseException {
|
||||||
|
|
|
@ -141,6 +141,10 @@ public class NfcHelper {
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void onPostExecute(Void unused) {
|
protected void onPostExecute(Void unused) {
|
||||||
|
if (mActivity.isFinishing()) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
// Register callback to set NDEF message
|
// Register callback to set NDEF message
|
||||||
mNfcAdapter.setNdefPushMessageCallback(mNdefCallback,
|
mNfcAdapter.setNdefPushMessageCallback(mNdefCallback,
|
||||||
mActivity);
|
mActivity);
|
||||||
|
|
Loading…
Reference in a new issue