diff --git a/lib/foundation/app.dart b/lib/foundation/app.dart index 9ed44e8..aecd9e5 100644 --- a/lib/foundation/app.dart +++ b/lib/foundation/app.dart @@ -52,7 +52,7 @@ class _App { BuildContext get rootContext => rootNavigatorKey.currentContext!; void rootPop() { - rootNavigatorKey.currentState?.pop(); + rootNavigatorKey.currentState?.maybePop(); } void pop() { diff --git a/lib/network/cloudflare.dart b/lib/network/cloudflare.dart index cf61de1..810bafa 100644 --- a/lib/network/cloudflare.dart +++ b/lib/network/cloudflare.dart @@ -152,6 +152,7 @@ void passCloudflare(CloudflareException e, void Function() onFinished) async { ); webview.open(); } else { + bool success = false; void check(InAppWebViewController controller) async { var head = await controller.evaluateJavascript( source: "document.head.innerHTML") as String; @@ -176,7 +177,10 @@ void passCloudflare(CloudflareException e, void Function() onFinished) async { return; } SingleInstanceCookieJar.instance?.saveFromResponse(uri, cookies); - App.rootPop(); + if (!success) { + App.rootPop(); + success = true; + } } }