diff options
Diffstat (limited to 'internal')
| -rw-r--r-- | internal/server/handlers/basehandler.go | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/internal/server/handlers/basehandler.go b/internal/server/handlers/basehandler.go index f6ab3db..ab48dcd 100644 --- a/internal/server/handlers/basehandler.go +++ b/internal/server/handlers/basehandler.go @@ -76,11 +76,18 @@ func (h *baseHandler) Read(p []byte) (n int, err error) { return } + // Skip empty server messages when in plain mode + if h.plain && (message == "" || message == "\n") { + return + } + // Handle normal server message (display to the user) - h.readBuf.WriteString("SERVER") - h.readBuf.WriteString(protocol.FieldDelimiter) - h.readBuf.WriteString(h.hostname) - h.readBuf.WriteString(protocol.FieldDelimiter) + if !h.plain { + h.readBuf.WriteString("SERVER") + h.readBuf.WriteString(protocol.FieldDelimiter) + h.readBuf.WriteString(h.hostname) + h.readBuf.WriteString(protocol.FieldDelimiter) + } h.readBuf.WriteString(message) h.readBuf.WriteByte(protocol.MessageDelimiter) n = copy(p, h.readBuf.Bytes()) |
