diff options
author | Robert Griesemer <gri@golang.org> | 2016-02-08 14:50:45 -0800 |
---|---|---|
committer | Robert Griesemer <gri@golang.org> | 2016-02-08 23:10:00 +0000 |
commit | 41191e192cb3d499ca8a2552117029493c6be1a9 (patch) | |
tree | 215c7ea6e1b1e9b8b0b41b238d1cc3ef8865df34 | |
parent | 77b4c8d9af0bfad762db7bb9bbc1793c5a233acd (diff) | |
download | go-41191e192cb3d499ca8a2552117029493c6be1a9.tar.gz go-41191e192cb3d499ca8a2552117029493c6be1a9.zip |
go/constant: fix String() implementation
Fixes #14262.
Change-Id: Id590995dd4460e81f6b91bcfb3f02515a97650fe
Reviewed-on: https://go-review.googlesource.com/19361
Run-TryBot: Robert Griesemer <gri@golang.org>
Reviewed-by: Alan Donovan <adonovan@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
-rw-r--r-- | src/go/constant/value.go | 2 | ||||
-rw-r--r-- | src/go/constant/value_test.go | 2 |
2 files changed, 3 insertions, 1 deletions
diff --git a/src/go/constant/value.go b/src/go/constant/value.go index 630581047a..310814df71 100644 --- a/src/go/constant/value.go +++ b/src/go/constant/value.go @@ -96,7 +96,7 @@ func (x stringVal) String() string { // only the first maxLen-3 runes; then add "...". i := 0 for n := 0; n < maxLen-3; n++ { - _, size := utf8.DecodeRuneInString(s) + _, size := utf8.DecodeRuneInString(s[i:]) i += size } s = s[:i] + "..." diff --git a/src/go/constant/value_test.go b/src/go/constant/value_test.go index de1ab0267a..dbd96c07a3 100644 --- a/src/go/constant/value_test.go +++ b/src/go/constant/value_test.go @@ -204,6 +204,7 @@ func eql(x, y Value) bool { // String tests var xxx = strings.Repeat("x", 68) +var issue14262 = `"بموجب الشروط التالية نسب المصنف — يجب عليك أن تنسب العمل بالطريقة التي تحددها المؤلف أو المرخص (ولكن ليس بأي حال من الأحوال أن توحي وتقترح بتحول أو استخدامك للعمل). المشاركة على قدم المساواة — إذا كنت يعدل ، والتغيير ، أو الاستفادة من هذا العمل ، قد ينتج عن توزيع العمل إلا في ظل تشابه او تطابق فى واحد لهذا الترخيص."` var stringTests = []struct { input, short, exact string @@ -225,6 +226,7 @@ var stringTests = []struct { {`"` + xxx + `xx"`, `"` + xxx + `xx"`, `"` + xxx + `xx"`}, {`"` + xxx + `xxx"`, `"` + xxx + `...`, `"` + xxx + `xxx"`}, {`"` + xxx + xxx + `xxx"`, `"` + xxx + `...`, `"` + xxx + xxx + `xxx"`}, + {issue14262, `"بموجب الشروط التالية نسب المصنف — يجب عليك أن تنسب العمل بالطريقة ال...`, issue14262}, // Int {"0", "0", "0"}, |