Blame SOURCES/x-text-infinite-loop.patch

66c09a
diff --git a/src/vendor/golang.org/x/text/transform/transform.go b/src/vendor/golang.org/x/text/transform/transform.go
66c09a
index 520b9ad..48ec64b 100644
66c09a
--- a/src/vendor/golang.org/x/text/transform/transform.go
66c09a
+++ b/src/vendor/golang.org/x/text/transform/transform.go
66c09a
@@ -648,7 +648,8 @@ func String(t Transformer, s string) (result string, n int, err error) {
66c09a
 	// Transform the remaining input, growing dst and src buffers as necessary.
66c09a
 	for {
66c09a
 		n := copy(src, s[pSrc:])
66c09a
-		nDst, nSrc, err := t.Transform(dst[pDst:], src[:n], pSrc+n == len(s))
66c09a
+		atEOF := pSrc+n == len(s)
66c09a
+		nDst, nSrc, err := t.Transform(dst[pDst:], src[:n], atEOF)
66c09a
 		pDst += nDst
66c09a
 		pSrc += nSrc
66c09a
 
66c09a
@@ -659,6 +660,9 @@ func String(t Transformer, s string) (result string, n int, err error) {
66c09a
 				dst = grow(dst, pDst)
66c09a
 			}
66c09a
 		} else if err == ErrShortSrc {
66c09a
+			if atEOF {
66c09a
+				return string(dst[:pDst]), pSrc, err
66c09a
+			}
66c09a
 			if nSrc == 0 {
66c09a
 				src = grow(src, 0)
66c09a
 			}