aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar Hoa V. DINH <dinh.viet.hoa@gmail.com>2013-04-16 00:39:17 -0700
committerGravatar Hoa V. DINH <dinh.viet.hoa@gmail.com>2013-04-16 00:39:17 -0700
commit4dd70e05283c79fabae6d47ca10802c9371330d3 (patch)
tree33d1486aa8e49332c32ea987504c41198a54c7cc
parent9389c2ddf5742659618051a04ac6069528187808 (diff)
Fixed behavior of String::deleteCharactersInRange()
-rw-r--r--src/core/basetypes/MCString.cc4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/core/basetypes/MCString.cc b/src/core/basetypes/MCString.cc
index 1ecceb39..be16fb41 100644
--- a/src/core/basetypes/MCString.cc
+++ b/src/core/basetypes/MCString.cc
@@ -1248,7 +1248,9 @@ void String::deleteCharactersInRange(Range range)
}
int32_t count = mLength - (int32_t) (range.location + range.length);
- u_memmove(&mUnicodeChars[range.location], &mUnicodeChars[range.location + range.length], count + 1);
+ u_memmove(&mUnicodeChars[range.location], &mUnicodeChars[range.location + range.length], count);
+ mLength -= range.length;
+ mUnicodeChars[mLength] = 0;
}
int String::locationOfString(String * occurrence)