diff options
Diffstat (limited to 'Godeps/_workspace/src/golang.org/x/text/encoding/traditionalchinese/big5.go')
-rw-r--r-- | Godeps/_workspace/src/golang.org/x/text/encoding/traditionalchinese/big5.go | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/Godeps/_workspace/src/golang.org/x/text/encoding/traditionalchinese/big5.go b/Godeps/_workspace/src/golang.org/x/text/encoding/traditionalchinese/big5.go index d184cfb5e..275821f5d 100644 --- a/Godeps/_workspace/src/golang.org/x/text/encoding/traditionalchinese/big5.go +++ b/Godeps/_workspace/src/golang.org/x/text/encoding/traditionalchinese/big5.go @@ -115,6 +115,13 @@ func (big5Encoder) Transform(dst, src []byte, atEOF bool) (nDst, nSrc int, err e // Decode a 1-byte rune. if r < utf8.RuneSelf { size = 1 + if nDst >= len(dst) { + err = transform.ErrShortDst + break + } + dst[nDst] = uint8(r) + nDst++ + continue } else { // Decode a multi-byte rune. @@ -166,16 +173,9 @@ func (big5Encoder) Transform(dst, src []byte, atEOF bool) (nDst, nSrc int, err e goto write2 } } - r = encoding.ASCIISub - } - - if nDst >= len(dst) { - err = transform.ErrShortDst + err = internal.ErrASCIIReplacement break } - dst[nDst] = uint8(r) - nDst++ - continue write2: if nDst+2 > len(dst) { |