From b3677715e64277fb59045684a7722ef8a8ab2541 Mon Sep 17 00:00:00 2001 From: Keisuke Kuroyanagi Date: Mon, 28 Mar 2016 19:16:30 +0900 Subject: [PATCH] Fix: doRunAdvance returns wrong value when offset == count. Bug: 27869952 Change-Id: I56278676da4c354ced4244e4b073bb0d82edf93b --- core/jni/android/graphics/Paint.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/jni/android/graphics/Paint.cpp b/core/jni/android/graphics/Paint.cpp index d00e94ca4fd97..f00f0bf64d4f1 100644 --- a/core/jni/android/graphics/Paint.cpp +++ b/core/jni/android/graphics/Paint.cpp @@ -823,7 +823,7 @@ namespace PaintGlue { static jfloat doRunAdvance(const Paint* paint, TypefaceImpl* typeface, const jchar buf[], jint start, jint count, jint bufSize, jboolean isRtl, jint offset) { int bidiFlags = isRtl ? kBidi_Force_RTL : kBidi_Force_LTR; - if (offset == count) { + if (offset == start + count) { return MinikinUtils::measureText(paint, bidiFlags, typeface, buf, start, count, bufSize, nullptr); }