From 1599a205839a134f58d0a0e1e91459102ccb6f95 Mon Sep 17 00:00:00 2001 From: observer Date: Tue, 15 Sep 2026 03:06:22 +0100 Subject: [PATCH] Set replay=0 in messageBuffer --- .../kotlin/com/shr4pnel/ferretirc/net/MessageReader.kt | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/src/main/kotlin/com/shr4pnel/ferretirc/net/MessageReader.kt b/src/main/kotlin/com/shr4pnel/ferretirc/net/MessageReader.kt index 29f0d3d..263efab 100644 --- a/src/main/kotlin/com/shr4pnel/ferretirc/net/MessageReader.kt +++ b/src/main/kotlin/com/shr4pnel/ferretirc/net/MessageReader.kt @@ -21,7 +21,7 @@ import kotlin.reflect.cast class MessageReader(socket: Socket, scope: CoroutineScope, enableLogging: Boolean = false) : MessageIO(socket, scope) { private lateinit var receive: ByteReadChannel - private val messageBuffer = MutableSharedFlow(16, 64) + private val messageBuffer = MutableSharedFlow(0, 64) val sharedMessageBuffer = messageBuffer.asSharedFlow() val parser = MessageParser(incomingMessages, enableLogging) private val logger = if (enableLogging) KotlinLogging.logger {} else KotlinLogging.logger(NOPLogger.NOP_LOGGER) @@ -31,8 +31,8 @@ class MessageReader(socket: Socket, scope: CoroutineScope, enableLogging: Boolea parser.start() } scope.launch { - for (msg in parser.incomingParsedMessages) - messageBuffer.emit(msg) + for (msg in parser.incomingParsedMessages) // receive parsed messages + messageBuffer.emit(msg) // send messages down shared flow } } @@ -41,8 +41,7 @@ class MessageReader(socket: Socket, scope: CoroutineScope, enableLogging: Boolea receive = socket.openReadChannel() while (true) { val line = receive.readLineStrict() ?: break // >:( no LineEnding option for just CRLF? charlatans... - logger.debug { "Receive: $line" } - incomingMessages.send(line) + incomingMessages.send(line) // send raw messages to parser } } }