diff --git a/app/src/main/java/io/legado/app/model/SharedJsScope.kt b/app/src/main/java/io/legado/app/model/SharedJsScope.kt index 5a51a0bdc..4b1f679da 100644 --- a/app/src/main/java/io/legado/app/model/SharedJsScope.kt +++ b/app/src/main/java/io/legado/app/model/SharedJsScope.kt @@ -27,7 +27,8 @@ object SharedJsScope { if (scope == null) { val context = SCRIPT_ENGINE.getScriptContext(SimpleBindings()) scope = SCRIPT_ENGINE.getRuntimeScope(context) - Context.enter().use { + val rhino = Context.enter() + rhino.runCatching { if (jsLib.isJsonObject()) { val jsMap: Map = GSON.fromJson( jsLib, @@ -42,13 +43,14 @@ object SharedJsScope { val js = okHttpClient.newCallStrResponse { url(value) }.body - it.evaluateString(scope, js, "jsLib", 1, null) + evaluateString(scope, js, "jsLib", 1, null) } } } else { - it.evaluateString(scope, jsLib, "jsLib", 1, null) + evaluateString(scope, jsLib, "jsLib", 1, null) } } + Context.exit() scopeMap[key] = WeakReference(scope) } return scope