diff --git a/dom/media/gmp/ChromiumCDMProxy.cpp b/dom/media/gmp/ChromiumCDMProxy.cpp index 11e320f5a0a6..d4248724bc46 100644 --- a/dom/media/gmp/ChromiumCDMProxy.cpp +++ b/dom/media/gmp/ChromiumCDMProxy.cpp @@ -38,6 +38,9 @@ void ChromiumCDMProxy::Init(PromiseId aPromiseId, const nsAString& aOrigin, const nsAString& aTopLevelOrigin, const nsAString& aGMPName) { MOZ_ASSERT(NS_IsMainThread()); + + RefPtr helper(std::move(mCrashHelper)); + NS_ENSURE_TRUE_VOID(!mKeys.IsNull()); EME_LOG( @@ -62,7 +65,6 @@ void ChromiumCDMProxy::Init(PromiseId aPromiseId, const nsAString& aOrigin, gmp::NodeId nodeId(aOrigin, aTopLevelOrigin, aGMPName); RefPtr thread = mGMPThread; - RefPtr helper(mCrashHelper); RefPtr self(this); nsCString keySystem = NS_ConvertUTF16toUTF8(mKeySystem); RefPtr task(NS_NewRunnableFunction( diff --git a/dom/media/gmp/ChromiumCDMProxy.h b/dom/media/gmp/ChromiumCDMProxy.h index 13fa28b45590..5b6b68c626ba 100644 --- a/dom/media/gmp/ChromiumCDMProxy.h +++ b/dom/media/gmp/ChromiumCDMProxy.h @@ -111,7 +111,7 @@ class ChromiumCDMProxy : public CDMProxy { ~ChromiumCDMProxy(); - GMPCrashHelper* mCrashHelper; + RefPtr mCrashHelper; Mutex mCDMMutex; RefPtr mCDM;