aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/SkStringUtils.cpp
diff options
context:
space:
mode:
authorGravatar Hal Canary <halcanary@google.com>2018-07-24 11:33:21 -0400
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2018-07-25 17:21:56 +0000
commit4014ba6ec7a7825495ac0a6ed591c5dadd30751d (patch)
tree7439f79dce6e1768d7cdf3e36d4952fd9ed8ef1b /src/core/SkStringUtils.cpp
parentba5c439809fb2be3b1db159b29aeffaa39f786df (diff)
SkUtils: remove some versions of UTF routines.
Change-Id: Ib1f776ae472117c23d2145253adf25fceb412b32 Reviewed-on: https://skia-review.googlesource.com/143111 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Hal Canary <halcanary@google.com>
Diffstat (limited to 'src/core/SkStringUtils.cpp')
-rw-r--r--src/core/SkStringUtils.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/core/SkStringUtils.cpp b/src/core/SkStringUtils.cpp
index c4c1739b19..500478585f 100644
--- a/src/core/SkStringUtils.cpp
+++ b/src/core/SkStringUtils.cpp
@@ -55,13 +55,14 @@ SkString SkTabString(const SkString& string, int tabCnt) {
SkString SkStringFromUTF16(const uint16_t* src, size_t count) {
SkString ret;
+ const uint16_t* stop = src + count;
if (count > 0) {
SkASSERT(src);
size_t n = 0;
const uint16_t* end = src + count;
for (const uint16_t* ptr = src; ptr < end;) {
const uint16_t* last = ptr;
- SkUnichar u = SkUTF16_NextUnichar(&ptr);
+ SkUnichar u = SkUTF16_NextUnichar(&ptr, stop);
size_t s = SkUTF8_FromUnichar(u);
if (n > UINT32_MAX - s) {
end = last; // truncate input string
@@ -72,7 +73,7 @@ SkString SkStringFromUTF16(const uint16_t* src, size_t count) {
ret = SkString(n);
char* out = ret.writable_str();
for (const uint16_t* ptr = src; ptr < end;) {
- out += SkUTF8_FromUnichar(SkUTF16_NextUnichar(&ptr), out);
+ out += SkUTF8_FromUnichar(SkUTF16_NextUnichar(&ptr, stop), out);
}
SkASSERT(out == ret.writable_str() + n);
}