From dd03ca38a1dbf9646af664d1124e7e00d7984bae Mon Sep 17 00:00:00 2001 From: Azalea <22280294+hykilpikonna@users.noreply.github.com> Date: Tue, 7 Oct 2025 03:40:28 +0800 Subject: [PATCH] [F] Fix memory leak --- src/main/java/icu/samnyan/aqua/sega/aimedb/AimeDB.kt | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) 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() }