From 22e8e83ab95798288af01180bc9fe1a557ee2787 Mon Sep 17 00:00:00 2001 From: Flam3rboy <34555296+Flam3rboy@users.noreply.github.com> Date: Fri, 7 May 2021 20:04:18 +0200 Subject: [PATCH] :bug: fix identify --- src/opcodes/Identify.ts | 3 +-- src/opcodes/instanceOf.ts | 8 ++++++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/src/opcodes/Identify.ts b/src/opcodes/Identify.ts index 0f0ca470..f31eebfe 100644 --- a/src/opcodes/Identify.ts +++ b/src/opcodes/Identify.ts @@ -13,7 +13,6 @@ import { EVENTEnum, } from "@fosscord/server-util"; import { setupListener } from "../listener/listener"; -import { instanceOf } from "lambert-server"; import { IdentifySchema } from "../schema/Identify"; import { Send } from "../util/Send"; import experiments from "./experiments.json"; @@ -25,7 +24,7 @@ import { check } from "./instanceOf"; export async function onIdentify(this: WebSocket, data: Payload) { clearTimeout(this.readyTimeout); - if (!check.call(this, IdentifySchema, data.d)) return; + check.call(this, IdentifySchema, data.d); const identify: IdentifySchema = data.d; diff --git a/src/opcodes/instanceOf.ts b/src/opcodes/instanceOf.ts index 4a34477f..7dcc95a2 100644 --- a/src/opcodes/instanceOf.ts +++ b/src/opcodes/instanceOf.ts @@ -4,11 +4,15 @@ import WebSocket from "../util/WebSocket"; export function check(this: WebSocket, schema: any, data: any) { try { - if (instanceOf(schema, data) !== true) throw "invalid"; + const error = instanceOf(schema, data); + if (error !== true) { + throw error; + } + return true; } catch (error) { console.error(error); // invalid payload this.close(CLOSECODES.Decode_error); - return false; + throw error; } }