fix(gateway): properly deserialise null, such as in HeartbeatAck

This commit is contained in:
Cilly Leang 2026-01-27 17:37:52 +11:00
parent b04d75df99
commit b4856b49fb
Signed by: cilly
GPG key ID: 6500251E087653C9

View file

@ -1,6 +1,7 @@
package moe.lava.neon.core.api.gateway package moe.lava.neon.core.api.gateway
import kotlinx.serialization.KSerializer import kotlinx.serialization.KSerializer
import kotlinx.serialization.json.JsonNull
import kotlinx.serialization.json.decodeFromJsonElement import kotlinx.serialization.json.decodeFromJsonElement
import moe.lava.neon.core.api.ApiConstants import moe.lava.neon.core.api.ApiConstants
@ -32,7 +33,7 @@ fun Payload.Unknown.asIncoming() : Payload.WithSequence {
private inline fun <reified T : Event.Incoming> Payload.Unknown.decode(): Payload.Incoming<T> = private inline fun <reified T : Event.Incoming> Payload.Unknown.decode(): Payload.Incoming<T> =
Payload.Incoming( Payload.Incoming(
op = op, op = op,
d = json.decodeFromJsonElement<T>(d!!), d = json.decodeFromJsonElement<T>(d ?: JsonNull),
s = s, s = s,
t = t, t = t,
) )