Bug 1340710 - Part 9: Speed up the OriginAttributes comparison in BasePrincipal::Subsumes(); r=bholley

This commit is contained in:
Ehsan Akhgari 2017-02-24 20:27:06 -05:00
Родитель 513af88e99
Коммит 3812e3f854
1 изменённых файлов: 2 добавлений и 1 удалений

Просмотреть файл

@ -321,13 +321,14 @@ bool
BasePrincipal::Subsumes(nsIPrincipal* aOther, DocumentDomainConsideration aConsideration)
{
MOZ_ASSERT(aOther);
MOZ_ASSERT_IF(Kind() == eCodebasePrincipal, mOriginSuffix);
// Expanded principals handle origin attributes for each of their
// sub-principals individually, null principals do only simple checks for
// pointer equality, and system principals are immune to origin attributes
// checks, so only do this check for codebase principals.
if (Kind() == eCodebasePrincipal &&
OriginAttributesRef() != Cast(aOther)->OriginAttributesRef()) {
mOriginSuffix != Cast(aOther)->mOriginSuffix) {
return false;
}