From 28ea3d014a1c6a85480c45d2e49f0e99fbf10295 Mon Sep 17 00:00:00 2001
From: goapunk <goapunk@riseup.net>
Date: Tue, 3 Jul 2018 11:09:43 +0200
Subject: [PATCH] Fix a possible null reference bug

---
 .../android/keyagreement/KeyAgreementActivity.java     |  2 +-
 .../android/keyagreement/KeyAgreementFragment.java     | 10 +++++++---
 2 files changed, 8 insertions(+), 4 deletions(-)

diff --git a/briar-android/src/main/java/org/briarproject/briar/android/keyagreement/KeyAgreementActivity.java b/briar-android/src/main/java/org/briarproject/briar/android/keyagreement/KeyAgreementActivity.java
index 5f722eb336..189ca17718 100644
--- a/briar-android/src/main/java/org/briarproject/briar/android/keyagreement/KeyAgreementActivity.java
+++ b/briar-android/src/main/java/org/briarproject/briar/android/keyagreement/KeyAgreementActivity.java
@@ -177,7 +177,7 @@ public abstract class KeyAgreementActivity extends BriarActivity implements
 		// FIXME #824
 		FragmentManager fm = getSupportFragmentManager();
 		if (fm.findFragmentByTag(KeyAgreementFragment.TAG) == null) {
-			BaseFragment f = KeyAgreementFragment.newInstance(this);
+			BaseFragment f = KeyAgreementFragment.newInstance();
 			fm.beginTransaction()
 					.replace(R.id.fragmentContainer, f, f.getUniqueTag())
 					.addToBackStack(f.getUniqueTag())
diff --git a/briar-android/src/main/java/org/briarproject/briar/android/keyagreement/KeyAgreementFragment.java b/briar-android/src/main/java/org/briarproject/briar/android/keyagreement/KeyAgreementFragment.java
index 6781b88b64..2d35510de8 100644
--- a/briar-android/src/main/java/org/briarproject/briar/android/keyagreement/KeyAgreementFragment.java
+++ b/briar-android/src/main/java/org/briarproject/briar/android/keyagreement/KeyAgreementFragment.java
@@ -91,15 +91,19 @@ public class KeyAgreementFragment extends BaseEventFragment
 	private KeyAgreementTask task;
 	private KeyAgreementEventListener listener;
 
-	public static KeyAgreementFragment newInstance(
-			KeyAgreementEventListener listener) {
+	public static KeyAgreementFragment newInstance() {
 		Bundle args = new Bundle();
 		KeyAgreementFragment fragment = new KeyAgreementFragment();
-		fragment.listener = listener;
 		fragment.setArguments(args);
 		return fragment;
 	}
 
+	@Override
+	public void onAttach(Context context) {
+		super.onAttach(context);
+		listener = (KeyAgreementEventListener) context;
+	}
+
 	@Override
 	public void injectFragment(ActivityComponent component) {
 		component.inject(this);
-- 
GitLab