From 040607a8314222f5958b96eb1bc20d840d1bcaac Mon Sep 17 00:00:00 2001 From: Illirgway Date: Mon, 21 Jun 2021 23:04:01 +0300 Subject: [PATCH] strings.TrimSpace micro-optimization strings.TrimSpace string's end final trimming should use more specific TrimRightFunc instead of common TrimFunc (because start has already trimmed before) --- src/strings/strings.go | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/strings/strings.go b/src/strings/strings.go index b429735feadf9d..4ca70227661e23 100644 --- a/src/strings/strings.go +++ b/src/strings/strings.go @@ -884,7 +884,8 @@ func TrimSpace(s string) string { for ; stop > start; stop-- { c := s[stop-1] if c >= utf8.RuneSelf { - return TrimFunc(s[start:stop], unicode.IsSpace) + // start has been already trimmed above, should trim end only + return TrimRightFunc(s[start:stop], unicode.IsSpace) } if asciiSpace[c] == 0 { break