From bbd99b655ac74ac3253c793d7cf376e309156f65 Mon Sep 17 00:00:00 2001 From: Shivaram Lingamneni Date: Wed, 20 Feb 2019 21:40:25 -0500 Subject: [PATCH] A labeled command that has 0 response lines should receive an empty batch See discussion on #391. --- irc/responsebuffer.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/irc/responsebuffer.go b/irc/responsebuffer.go index 3fccca01..183a7fe7 100644 --- a/irc/responsebuffer.go +++ b/irc/responsebuffer.go @@ -142,10 +142,10 @@ func (rb *ResponseBuffer) flushInternal(final bool, blocking bool) error { } useLabel := rb.target.capabilities.Has(caps.LabeledResponse) && rb.Label != "" - // use a batch if we have a label, and we either currently have multiple messages, + // use a batch if we have a label, and we either currently have 0 or 2+ messages, // or we are doing a Flush() and we have to assume that there will be more messages // in the future. - useBatch := useLabel && (len(rb.messages) > 1 || !final) + useBatch := useLabel && (len(rb.messages) != 1 || !final) // if label but no batch, add label to first message if useLabel && !useBatch && len(rb.messages) == 1 && rb.batchID == "" {