Bug 1598472 - MOZ_CRASH("Origin must be available when deserialized") impedes fuzzing r=ckerschb

When fuzzing, return an error instead of crashing in PrincipalInfoToPrincipal() for some error cases.

Differential Revision: https://phabricator.services.mozilla.com/D54215

--HG--
extra : moz-landing-system : lando
This commit is contained in:
Haik Aftandilian 2019-11-26 18:21:22 +00:00
parent fee9a00a3d
commit 42172d9b97

View File

@ -95,7 +95,11 @@ already_AddRefed<nsIPrincipal> PrincipalInfoToPrincipal(
rv = principal->GetOriginNoSuffix(originNoSuffix);
if (NS_WARN_IF(NS_FAILED(rv)) ||
!info.originNoSuffix().Equals(originNoSuffix)) {
#ifdef FUZZING
return nullptr;
#else
MOZ_CRASH("Origin must be available when deserialized");
#endif /* FUZZING */
}
if (info.domain()) {
@ -116,7 +120,11 @@ already_AddRefed<nsIPrincipal> PrincipalInfoToPrincipal(
rv = principal->GetBaseDomain(baseDomain);
if (NS_WARN_IF(NS_FAILED(rv)) ||
!info.baseDomain().Equals(baseDomain)) {
#ifdef FUZZING
return nullptr;
#else
MOZ_CRASH("Base domain must be available when deserialized");
#endif /* FUZZING */
}
}