From b139a9ab417c53e6e0eed3438858d5e29d4cd10b Mon Sep 17 00:00:00 2001 From: Rose Hogenson Date: Tue, 14 Oct 2025 20:54:19 -0700 Subject: Avoid even more copies in ascii decode This way the contents get written directly into the base64 decoder's internal buffer, instead of first being buffered inside the bufio.Reader. --- internal/sym/dec.go | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) (limited to 'internal') diff --git a/internal/sym/dec.go b/internal/sym/dec.go index 93130a4..d9480bb 100644 --- a/internal/sym/dec.go +++ b/internal/sym/dec.go @@ -32,7 +32,7 @@ func decryptBinary(w io.Writer, r io.Reader, password string) error { } func decrypt(w io.Writer, r io.Reader, password string) error { - bufReader := bufio.NewReader(r) + bufReader := bufio.NewReaderSize(r, 81) b, err := bufReader.Peek(1) if err != nil { if err == io.EOF { @@ -47,10 +47,7 @@ func decrypt(w io.Writer, r io.Reader, password string) error { return errors.New("invalid input") } for { - _, err := bufReader.ReadBytes('\n') - if err != nil { - return err - } + bufReader.ReadLine() if b, err := bufReader.Peek(1); err != nil || b[0] != '-' { break } -- cgit v1.3.1