diff --git a/briar-android/src/main/java/org/briarproject/briar/android/keyagreement/ShowQrCodeFragment.java b/briar-android/src/main/java/org/briarproject/briar/android/keyagreement/ShowQrCodeFragment.java
index 29a249d60ec5f1ba7e0ad2cbfd5a040e119d06b0..ddb452e35a425633921d308be6f99eae3c2277be 100644
--- a/briar-android/src/main/java/org/briarproject/briar/android/keyagreement/ShowQrCodeFragment.java
+++ b/briar-android/src/main/java/org/briarproject/briar/android/keyagreement/ShowQrCodeFragment.java
@@ -218,7 +218,7 @@ public class ShowQrCodeFragment extends BaseEventFragment
 			statusView.setVisibility(VISIBLE);
 			status.setText(R.string.connecting_to_device);
 			task.connectAndRunProtocol(remotePayload);
-		} catch (IOException e) {
+		} catch (IOException | IllegalArgumentException e) {
 			// TODO show failure
 			Toast.makeText(getActivity(), R.string.qr_code_invalid,
 					LENGTH_LONG).show();