From ca3b4678343f10d73eabbf7c5715e56de244f24b Mon Sep 17 00:00:00 2001 From: Horis <8674809+821938089@users.noreply.github.com> Date: Mon, 8 Jul 2024 08:59:33 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/script/rhino/RhinoCompiledScript.kt | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/modules/rhino/src/main/java/com/script/rhino/RhinoCompiledScript.kt b/modules/rhino/src/main/java/com/script/rhino/RhinoCompiledScript.kt index fb495b4b0..967b581f3 100644 --- a/modules/rhino/src/main/java/com/script/rhino/RhinoCompiledScript.kt +++ b/modules/rhino/src/main/java/com/script/rhino/RhinoCompiledScript.kt @@ -98,10 +98,9 @@ internal class RhinoCompiledScript( } override fun eval(scope: Scriptable, coroutineContext: CoroutineContext?): Any? { - val cx = Context.enter() - if (cx is RhinoContext) { - cx.coroutineContext = coroutineContext - } + val cx = Context.enter() as RhinoContext + val previousCoroutineContext = cx.coroutineContext + cx.coroutineContext = coroutineContext val result: Any? try { val ret = script.exec(cx, scope) @@ -117,6 +116,7 @@ internal class RhinoCompiledScript( se.initCause(re) throw se } finally { + cx.coroutineContext = previousCoroutineContext Context.exit() } return result