summaryrefslogtreecommitdiff
path: root/internal
diff options
context:
space:
mode:
Diffstat (limited to 'internal')
-rw-r--r--internal/server/handlers/basehandler.go15
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())