Bug 1527505 - Part 3: Compute the origin hash once when storing permissions; r=nika

Depends on D20230

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

--HG--
extra : moz-landing-system : lando
This commit is contained in:
Ehsan Akhgari 2019-02-21 22:54:10 +00:00
Родитель f017471b08
Коммит 4268da8938
1 изменённых файлов: 5 добавлений и 3 удалений

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

@ -79,17 +79,19 @@ class nsPermissionManager final : public nsIPermissionManager,
static PermissionKey* CreateFromOriginNoSuffix(
const nsACString& aOriginNoSuffix);
explicit PermissionKey(const nsACString& aOrigin) : mOrigin(aOrigin) {}
explicit PermissionKey(const nsACString& aOrigin)
: mOrigin(aOrigin), mHashCode(mozilla::HashString(aOrigin)) {}
bool operator==(const PermissionKey& aKey) const {
return mOrigin.Equals(aKey.mOrigin);
}
PLDHashNumber GetHashCode() const { return mozilla::HashString(mOrigin); }
PLDHashNumber GetHashCode() const { return mHashCode; }
NS_INLINE_DECL_THREADSAFE_REFCOUNTING(PermissionKey)
nsCString mOrigin;
const nsCString mOrigin;
const PLDHashNumber mHashCode;
private:
// Default ctor shouldn't be used.