Bug 1530369 - part 2 - bulk-append characters in generateNextToken; r=ckerschb

Instead of appending each individual charater, we can delay the append
until after the loop, which saves on function calls.
This commit is contained in:
Nathan Froyd 2019-02-25 13:58:53 -05:00
parent 63e3631fcc
commit ef665544c6

View File

@ -27,9 +27,14 @@ PolicyTokenizer::~PolicyTokenizer() {
void PolicyTokenizer::generateNextToken() {
skipWhiteSpaceAndSemicolon();
MOZ_ASSERT(mCurToken.Length() == 0);
const char16_t* const start = mCurChar;
while (!atEnd() && !nsContentUtils::IsHTMLWhitespace(*mCurChar) &&
*mCurChar != SEMICOL) {
mCurToken.Append(*mCurChar++);
mCurChar++;
}
if (start != mCurChar) {
mCurToken.Append(start, mCurChar - start);
}
POLICYTOKENIZERLOG(("PolicyTokenizer::generateNextToken: %s",
NS_ConvertUTF16toUTF8(mCurToken).get()));