diff options
author | Aaron Jacobs <jacobsa@google.com> | 2015-10-28 08:58:26 +1100 |
---|---|---|
committer | Russ Cox <rsc@golang.org> | 2015-11-24 17:12:35 +0000 |
commit | b39329bff56abf35edc91537252782814a7a4f84 (patch) | |
tree | 3bf794c4eecf17143e571ea7ae04aeb964498bc1 /src/unicode | |
parent | a150c4ff2464b4d72732ea57c0831f58ff9b5e0f (diff) | |
download | go-b39329bff56abf35edc91537252782814a7a4f84.tar.gz go-b39329bff56abf35edc91537252782814a7a4f84.zip |
unicode/utf8: don't imply that the empty string is incorrect UTF-8
Change-Id: Idd9523949ee4f2f304b12be39f8940ba34a420be
Reviewed-on: https://go-review.googlesource.com/16361
Reviewed-by: Russ Cox <rsc@golang.org>
Diffstat (limited to 'src/unicode')
-rw-r--r-- | src/unicode/utf8/utf8.go | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/unicode/utf8/utf8.go b/src/unicode/utf8/utf8.go index bcb0de402e..bbaf14aab8 100644 --- a/src/unicode/utf8/utf8.go +++ b/src/unicode/utf8/utf8.go @@ -145,7 +145,7 @@ func FullRuneInString(s string) bool { // DecodeRune unpacks the first UTF-8 encoding in p and returns the rune and // its width in bytes. If p is empty it returns (RuneError, 0). Otherwise, if // the encoding is invalid, it returns (RuneError, 1). Both are impossible -// results for correct UTF-8. +// results for correct, non-empty UTF-8. // // An encoding is invalid if it is incorrect UTF-8, encodes a rune that is // out of range, or is not the shortest possible UTF-8 encoding for the @@ -192,7 +192,8 @@ func DecodeRune(p []byte) (r rune, size int) { // DecodeRuneInString is like DecodeRune but its input is a string. If s is // empty it returns (RuneError, 0). Otherwise, if the encoding is invalid, it -// returns (RuneError, 1). Both are impossible results for correct UTF-8. +// returns (RuneError, 1). Both are impossible results for correct, non-empty +// UTF-8. // // An encoding is invalid if it is incorrect UTF-8, encodes a rune that is // out of range, or is not the shortest possible UTF-8 encoding for the @@ -240,7 +241,7 @@ func DecodeRuneInString(s string) (r rune, size int) { // DecodeLastRune unpacks the last UTF-8 encoding in p and returns the rune and // its width in bytes. If p is empty it returns (RuneError, 0). Otherwise, if // the encoding is invalid, it returns (RuneError, 1). Both are impossible -// results for correct UTF-8. +// results for correct, non-empty UTF-8. // // An encoding is invalid if it is incorrect UTF-8, encodes a rune that is // out of range, or is not the shortest possible UTF-8 encoding for the @@ -279,7 +280,8 @@ func DecodeLastRune(p []byte) (r rune, size int) { // DecodeLastRuneInString is like DecodeLastRune but its input is a string. If // s is empty it returns (RuneError, 0). Otherwise, if the encoding is invalid, -// it returns (RuneError, 1). Both are impossible results for correct UTF-8. +// it returns (RuneError, 1). Both are impossible results for correct, +// non-empty UTF-8. // // An encoding is invalid if it is incorrect UTF-8, encodes a rune that is // out of range, or is not the shortest possible UTF-8 encoding for the |