From 6be492f19cdf7d00555cef36671168b6d9f183be Mon Sep 17 00:00:00 2001 From: Avad3 <65318266+Avad3@users.noreply.github.com> Date: Sun, 28 Jul 2024 21:45:08 -0400 Subject: [PATCH] Fix Function constructor proxy logic --- src/client/shared/eval.ts | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/client/shared/eval.ts b/src/client/shared/eval.ts index 553e5e8..7b229cc 100644 --- a/src/client/shared/eval.ts +++ b/src/client/shared/eval.ts @@ -2,11 +2,9 @@ import { ScramjetClient, ProxyCtx } from "../client"; import { rewriteJs } from "../shared"; function rewriteFunction(ctx: ProxyCtx) { - for (const i in ctx.args) { - ctx.args[i] = rewriteJs(ctx.args[i]); - } + const stringifiedFunction = ctx.fn(...ctx.args).toString(); - ctx.return(ctx.fn(...ctx.args)); + ctx.return(ctx.fn(`return ${rewriteJs(stringifiedFunction)}`)()); } export default function (client: ScramjetClient, self: Self) {