commit 48e0bacfb50769e3d5a58f0d2e004e0dc39b12c3
parent 02f396810119b6dbbc0517cf2656f37c0c50c2e0
Author: Natasha Kerensikova <natgh@instinctive.eu>
Date: Fri, 20 Jun 2025 19:13:18 +0000
Transient string builders, rather than a NatsIM member
Diffstat:
1 file changed, 8 insertions(+), 9 deletions(-)
diff --git a/main.go b/main.go
@@ -99,7 +99,6 @@ type NatsIM struct {
cmdQueue chan command
ircQueue chan string
dropped atomic.Uint32
- buf strings.Builder
}
func NewNatsIM(configPath string) (*NatsIM, error) {
@@ -324,21 +323,21 @@ func (natsim *NatsIM) ircSplit(s string) []string {
result = append(result, line)
} else {
for offset := 0; offset < len(line); {
+ var buf strings.Builder
l := len(line) - offset
- natsim.buf.Reset()
if offset > 0 {
- natsim.buf.WriteString(natsim.Irc.ContPrefix)
+ buf.WriteString(natsim.Irc.ContPrefix)
}
- if natsim.buf.Len()+l <= natsim.Irc.MaxLine {
- natsim.buf.WriteString(line[offset:])
+ if buf.Len()+l <= natsim.Irc.MaxLine {
+ buf.WriteString(line[offset:])
} else {
- l = natsim.Irc.MaxLine - natsim.buf.Len() - len(natsim.Irc.ContSuffix)
- natsim.buf.WriteString(line[offset : offset+l])
- natsim.buf.WriteString(natsim.Irc.ContSuffix)
+ l = natsim.Irc.MaxLine - buf.Len() - len(natsim.Irc.ContSuffix)
+ buf.WriteString(line[offset : offset+l])
+ buf.WriteString(natsim.Irc.ContSuffix)
}
- result = append(result, natsim.buf.String())
+ result = append(result, buf.String())
offset += l
}
}