From 33e78e898752934637931a8f16941daad0f93520 Mon Sep 17 00:00:00 2001 From: pb-coding <71174645+pb-coding@users.noreply.github.com> Date: Tue, 3 Oct 2023 20:21:00 +0200 Subject: [PATCH] fixes callback crashes --- src/game/events.ts | 6 +++--- src/server.ts | 8 ++++++-- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/src/game/events.ts b/src/game/events.ts index daf07a8..4d2fc78 100644 --- a/src/game/events.ts +++ b/src/game/events.ts @@ -9,13 +9,13 @@ type SessionResponse = "success" | "error:full" | "error:running"; export const handleJoinSession = ( socket: Socket, sessionId: string, - callback: Function + callback: Function | undefined ) => { const isSessionRunning = allGames.some( (game) => game.sessionId === sessionId ); if (isSessionRunning) { - callback("error:running" satisfies SessionResponse); + callback && callback("error:running" satisfies SessionResponse); socket.emit( "message", "A Game is already running in this session. Please join another session." @@ -24,7 +24,7 @@ export const handleJoinSession = ( } socket.join(sessionId); - callback("success" satisfies SessionResponse); + callback && callback("success" satisfies SessionResponse); console.log("User joined session:", sessionId); const numberOfClients = io.sockets.adapter.rooms.get(sessionId)?.size ?? 0; diff --git a/src/server.ts b/src/server.ts index 1f1bcc4..4cbc8ef 100644 --- a/src/server.ts +++ b/src/server.ts @@ -34,8 +34,12 @@ export const io = new SocketIOServer(httpServer, { io.on("connection", (socket: Socket) => { console.log("A user connected:", socket.id); - socket.on("join-session", (sessionId: string, callback) => - handleJoinSession(socket, sessionId, callback) + socket.on( + "join-session", + (sessionId: string, callback: Function | undefined) => { + console.log(typeof callback); + handleJoinSession(socket, sessionId, callback); + } ); socket.on("leave-session", (sessionId: string) => {