When initialization, 'end' pointer refers terminal
character in a string. But it is incremented in
while loop. It occurs the access to non-secure memory.
Issue detail
http://code.google.com/p/android/issues/detail?id=24896
Change-Id: I751d1154d797738c87a66374a66933528c045be5
bool failed = false;
while (pos < end && !failed) {
const char16_t* start = pos;
bool failed = false;
while (pos < end && !failed) {
const char16_t* start = pos;
while (pos < end && *pos != '|') {
pos++;
}
while (pos < end && *pos != '|') {
pos++;
}