Horis 1 rok temu
rodzic
commit
ccb78eaf4f

+ 2 - 7
modules/rhino/src/main/java/com/script/rhino/RhinoCompiledScript.kt

@@ -37,9 +37,7 @@ import org.mozilla.javascript.RhinoException
 import org.mozilla.javascript.Script
 import org.mozilla.javascript.Script
 import org.mozilla.javascript.Scriptable
 import org.mozilla.javascript.Scriptable
 import java.io.IOException
 import java.io.IOException
-import kotlin.coroutines.Continuation
 import kotlin.coroutines.CoroutineContext
 import kotlin.coroutines.CoroutineContext
-import kotlin.coroutines.intrinsics.suspendCoroutineUninterceptedOrReturn
 
 
 /**
 /**
  * Represents compiled JavaScript code.
  * Represents compiled JavaScript code.
@@ -102,11 +100,8 @@ internal class RhinoCompiledScript(
                     while (true) {
                     while (true) {
                         try {
                         try {
                             @Suppress("UNCHECKED_CAST")
                             @Suppress("UNCHECKED_CAST")
-                            val suspendFunction =
-                                pending.applicationState as Function1<Continuation<Any?>, Any?>
-                            val functionResult = suspendCoroutineUninterceptedOrReturn { cout ->
-                                suspendFunction.invoke(cout)
-                            }
+                            val suspendFunction = pending.applicationState as suspend () -> Any?
+                            val functionResult = suspendFunction()
                             val continuation = pending.continuation
                             val continuation = pending.continuation
                             ret = cx.resumeContinuation(continuation, scope, functionResult)
                             ret = cx.resumeContinuation(continuation, scope, functionResult)
                             break
                             break

+ 2 - 7
modules/rhino/src/main/java/com/script/rhino/RhinoScriptEngine.kt

@@ -57,9 +57,7 @@ import java.security.AccessControlException
 import java.security.AccessController
 import java.security.AccessController
 import java.security.AllPermission
 import java.security.AllPermission
 import java.security.PrivilegedAction
 import java.security.PrivilegedAction
-import kotlin.coroutines.Continuation
 import kotlin.coroutines.CoroutineContext
 import kotlin.coroutines.CoroutineContext
-import kotlin.coroutines.intrinsics.suspendCoroutineUninterceptedOrReturn
 
 
 /**
 /**
  * Implementation of `ScriptEngine` using the Mozilla Rhino
  * Implementation of `ScriptEngine` using the Mozilla Rhino
@@ -145,11 +143,8 @@ object RhinoScriptEngine : AbstractScriptEngine(), Invocable, Compilable {
                     while (true) {
                     while (true) {
                         try {
                         try {
                             @Suppress("UNCHECKED_CAST")
                             @Suppress("UNCHECKED_CAST")
-                            val suspendFunction =
-                                pending.applicationState as Function1<Continuation<Any?>, Any?>
-                            val functionResult = suspendCoroutineUninterceptedOrReturn { cout ->
-                                suspendFunction.invoke(cout)
-                            }
+                            val suspendFunction = pending.applicationState as suspend () -> Any?
+                            val functionResult = suspendFunction()
                             val continuation = pending.continuation
                             val continuation = pending.continuation
                             ret = cx.resumeContinuation(continuation, scope, functionResult)
                             ret = cx.resumeContinuation(continuation, scope, functionResult)
                             break
                             break