diff options
| author | Siyamed Sinir <siyamed@google.com> | 2016-01-25 20:57:16 +0000 |
|---|---|---|
| committer | Android (Google) Code Review <android-gerrit@google.com> | 2016-01-25 20:57:16 +0000 |
| commit | 6feab9fb5900afae01b290175c0f7d23a7eda423 (patch) | |
| tree | 62d09a6651265471d771faaa49d781281c5f8e8f /core/java/android | |
| parent | bfb94e21d3b54cf3ab57a9fe78335aa576b0ab01 (diff) | |
| parent | 3a789f657b98fe82bf8febb3a0be9f6d616ce81d (diff) | |
Merge "SpannableStringBuilder.getSpans returns array with null values."
Diffstat (limited to 'core/java/android')
| -rw-r--r-- | core/java/android/text/SpannableStringBuilder.java | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/core/java/android/text/SpannableStringBuilder.java b/core/java/android/text/SpannableStringBuilder.java index e34560b80bda..787202eded02 100644 --- a/core/java/android/text/SpannableStringBuilder.java +++ b/core/java/android/text/SpannableStringBuilder.java @@ -965,10 +965,10 @@ public class SpannableStringBuilder implements CharSequence, GetChars, Spannable (spanStart != queryEnd && spanEnd != queryStart)) && (Object.class == kind || kind.isInstance(mSpans[i]))) { int spanPriority = mSpanFlags[i] & SPAN_PRIORITY; - if(sort) { - ret[count] = (T) mSpans[i]; - priority[count] = spanPriority; - insertionOrder[count] = mSpanOrder[i]; + int target = count; + if (sort) { + priority[target] = spanPriority; + insertionOrder[target] = mSpanOrder[i]; } else if (spanPriority != 0) { //insertion sort for elements with priority int j = 0; @@ -977,8 +977,9 @@ public class SpannableStringBuilder implements CharSequence, GetChars, Spannable if (spanPriority > p) break; } System.arraycopy(ret, j, ret, j + 1, count - j); - ret[j] = (T) mSpans[i]; + target = j; } + ret[target] = (T) mSpans[i]; count++; } if (count < ret.length && (i & 1) != 0) { |
