From 98422f736d24f5d2390c22ab85cb60f8c0d537b4 Mon Sep 17 00:00:00 2001 From: velzie Date: Tue, 30 Jul 2024 13:19:33 -0400 Subject: [PATCH] don't override non event properties on window --- src/client/shared/event.ts | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/client/shared/event.ts b/src/client/shared/event.ts index 4881c65..55d68ae 100644 --- a/src/client/shared/event.ts +++ b/src/client/shared/event.ts @@ -38,7 +38,7 @@ export default function (client: ScramjetClient, self: Self) { } } - return listener.apply(self, argArray); + return Reflect.apply(target, thisArg, argArray); }, }); } @@ -60,7 +60,11 @@ export default function (client: ScramjetClient, self: Self) { const keys = Reflect.ownKeys(target); for (const key of keys) { - if (typeof key === "string" && key.startsWith("on")) { + if ( + typeof key === "string" && + key.startsWith("on") && + handlers[key.slice(2)] + ) { const descriptor = Object.getOwnPropertyDescriptor(target, key); if (!descriptor.get || !descriptor.set || !descriptor.configurable) continue;