if (Substring(text, offset, 4).Equals(NS_LITERAL_STRING("&lt;"), nsCaseInsensitiveStringComparator()))
if (Substring(text, offset, 4).LowerCaseEqualsLiteral("&lt;"))
BookmarkParser::Unescape(nsString &text){    // convert some HTML-escaped (such as "&lt;") values back    PRInt32     offset=0;    while((offset = text.FindChar((PRUnichar('&')), offset)) >= 0)    {        if (Substring(text, offset, 4).Equals(NS_LITERAL_STRING("&lt;"), nsCaseInsensitiveStringComparator()))        {            text.Cut(offset, 4);            text.Insert(PRUnichar('<'), offset);        }        else if (Substring(text, offset, 4).Equals(NS_LITERAL_STRING("&gt;"), nsCaseInsensitiveStringComparator()))        {            text.Cut(offset, 4);            text.Insert(PRUnichar('>'), offset);        }        else if (Substring(text, offset, 5).Equals(NS_LITERAL_STRING("&amp;"), nsCaseInsensitiveStringComparator()))        {            text.Cut(offset, 5);            text.Insert(PRUnichar('&'), offset);        }        else if (Substring(text, offset, 6).Equals(NS_LITERAL_STRING("&quot;"), nsCaseInsensitiveStringComparator()))        {            text.Cut(offset, 6);            text.Insert(PRUnichar('\"'), offset);        }        else if (Substring(text, offset, 5).Equals(NS_LITERAL_STRING("&#39;")))        {            text.Cut(offset, 5);            text.Insert(PRUnichar('\''), offset);        }        ++offset;    }    return NS_OK;}