diff --git a/src/net/textproto/reader.go b/src/net/textproto/reader.go index d375340121fa0b..668c06c24c1372 100644 --- a/src/net/textproto/reader.go +++ b/src/net/textproto/reader.go @@ -110,11 +110,12 @@ func trim(s []byte) []byte { for i < len(s) && (s[i] == ' ' || s[i] == '\t') { i++ } - n := len(s) - for n > i && (s[n-1] == ' ' || s[n-1] == '\t') { + s = s[i:] + n := len(s) - 1 + for n >= 0 && (s[n] == ' ' || s[n] == '\t') { n-- } - return s[i:n] + return s[:n+1] } // ReadContinuedLineBytes is like [Reader.ReadContinuedLine] but