зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1592797 - Fix MediaKeys linker error exposed with different optimization flags r=edgar
Seeing this linker error when building with optimization flags -O2 and others: .../mozilla-central/dom/media/eme/mediadrm/MediaDrmCDMProxy.cpp:297: error: undefined reference to 'void mozilla::dom::MediaKeys::ResolvePromiseWithResult<bool>(unsigned int, bool const&)' This patch moves the template definition from dom/media/eme/MediaKeys.cpp to dom/media/eme/MediaKeys.h Differential Revision: https://phabricator.services.mozilla.com/D51188 --HG-- extra : moz-landing-system : lando
This commit is contained in:
Родитель
ffec9b2750
Коммит
603b880e70
|
@ -569,16 +569,6 @@ void MediaKeys::OnSessionLoaded(PromiseId aId, bool aSuccess) {
|
||||||
ResolvePromiseWithResult(aId, aSuccess);
|
ResolvePromiseWithResult(aId, aSuccess);
|
||||||
}
|
}
|
||||||
|
|
||||||
template <typename T>
|
|
||||||
void MediaKeys::ResolvePromiseWithResult(PromiseId aId, const T& aResult) {
|
|
||||||
RefPtr<DetailedPromise> promise(RetrievePromise(aId));
|
|
||||||
if (!promise) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
promise->MaybeResolve(aResult);
|
|
||||||
}
|
|
||||||
|
|
||||||
void MediaKeys::OnSessionClosed(MediaKeySession* aSession) {
|
void MediaKeys::OnSessionClosed(MediaKeySession* aSession) {
|
||||||
nsAutoString id;
|
nsAutoString id;
|
||||||
aSession->GetSessionId(id);
|
aSession->GetSessionId(id);
|
||||||
|
|
|
@ -149,7 +149,13 @@ class MediaKeys final : public nsIDocumentActivity,
|
||||||
dom::MediaKeyStatus aMediaKeyStatus);
|
dom::MediaKeyStatus aMediaKeyStatus);
|
||||||
|
|
||||||
template <typename T>
|
template <typename T>
|
||||||
void ResolvePromiseWithResult(PromiseId aId, const T& aResult);
|
void ResolvePromiseWithResult(PromiseId aId, const T& aResult) {
|
||||||
|
RefPtr<DetailedPromise> promise(RetrievePromise(aId));
|
||||||
|
if (!promise) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
promise->MaybeResolve(aResult);
|
||||||
|
}
|
||||||
|
|
||||||
private:
|
private:
|
||||||
// Instantiate CDMProxy instance.
|
// Instantiate CDMProxy instance.
|
||||||
|
|
Загрузка…
Ссылка в новой задаче