From eea7c3c8d522529d7c3ec663f21728e3862ca7db Mon Sep 17 00:00:00 2001 From: Hansen Kurli Date: Wed, 8 Nov 2023 15:20:51 +0800 Subject: [PATCH] Catch UnsupportedOperationException of startLegacyVpn startLegacyVpn may throw UnsupportedOperationException. Instead of crashing Settings, catch the exception and show a Toast. Bug: 161776767 Test: Manual test, connect legacy vpn profile and observe Toast. Change-Id: I5947f2043aa68478f659b34531202f225eab4568 --- src/com/android/settings/vpn2/ConfigDialogFragment.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/com/android/settings/vpn2/ConfigDialogFragment.java b/src/com/android/settings/vpn2/ConfigDialogFragment.java index b8825fed6b8..e38f92a28ce 100644 --- a/src/com/android/settings/vpn2/ConfigDialogFragment.java +++ b/src/com/android/settings/vpn2/ConfigDialogFragment.java @@ -207,6 +207,10 @@ public class ConfigDialogFragment extends InstrumentedDialogFragment implements mService.startLegacyVpn(profile); } catch (IllegalStateException e) { Toast.makeText(mContext, R.string.vpn_no_network, Toast.LENGTH_LONG).show(); + } catch (UnsupportedOperationException e) { + Log.e(TAG, "Attempted to start an unsupported VPN type."); + Toast.makeText(mContext, R.string.vpn_insecure_dialog_subtitle, Toast.LENGTH_LONG) + .show(); } } }