diff --git a/src/main/java/icu/samnyan/aqua/sega/aimedb/AimeDB.kt b/src/main/java/icu/samnyan/aqua/sega/aimedb/AimeDB.kt index 16ca534a..6e29c494 100644 --- a/src/main/java/icu/samnyan/aqua/sega/aimedb/AimeDB.kt +++ b/src/main/java/icu/samnyan/aqua/sega/aimedb/AimeDB.kt @@ -1,12 +1,10 @@ package icu.samnyan.aqua.sega.aimedb import ext.* -import icu.samnyan.aqua.net.BotProps import icu.samnyan.aqua.net.Fedy import icu.samnyan.aqua.net.db.AquaUserServices import icu.samnyan.aqua.sega.allnet.AllNetProps import icu.samnyan.aqua.sega.general.model.Card -import icu.samnyan.aqua.sega.general.model.CardStatus import icu.samnyan.aqua.sega.general.service.CardService import io.netty.buffer.ByteBuf import io.netty.buffer.ByteBufUtil @@ -70,9 +68,9 @@ class AimeDB( */ override fun channelRead(ctx: ChannelHandlerContext, msg: Any) { if (msg !is Map<*, *>) return + val type = msg["type"] as Int + val data = msg["data"] as ByteBuf try { - val type = msg["type"] as Int - val data = msg["data"] as ByteBuf val base = data.decodeHeader() val handler = handlers[type] ?: return logger.error("AimeDB: Unknown request type 0x${type.toString(16)}") @@ -91,6 +89,7 @@ class AimeDB( handler.fn(data)?.let { ctx.write(it) } } finally { + data.release() ctx.flush() ctx.close() }