Closed
Bug 1180070
Opened 9 years ago
Closed 9 years ago
[EME] Use MediaPromise for CDMProxy::Decrypt
Categories
(Core :: Audio/Video, defect)
Core
Audio/Video
Tracking
()
RESOLVED
FIXED
mozilla42
Tracking | Status | |
---|---|---|
firefox42 | --- | fixed |
People
(Reporter: cpearce, Assigned: cpearce)
References
(Blocks 1 open bug)
Details
Attachments
(1 file)
12.62 KB,
patch
|
jwwang
:
review+
sotaro
:
feedback+
|
Details | Diff | Splinter Review |
In bug 1171257 Sotaro discovered that we can receive a decrypt result after flushing, resulting in test failures. When an EMEDecryptor flushes, we need to also ensure that the decrypts we're waiting on are flushed. We can use MediaPromises to achieve this; we just need to disconnect all promises on flush or drain.
Assignee | ||
Comment 1•9 years ago
|
||
Use MediaPromises for CDMProxy::Decrypt, so that we can disconnect the promises we're waiting on when the EMEDecryptor flushes or drains. This means we can't get a decrypt result that was in progress before a flush after the flush completes. https://treeherder.mozilla.org/#/jobs?repo=try&revision=1efc5599cf23 Sotaro: Can you please check that this still fixes your bug? Thanks.
Attachment #8629172 -
Flags: review?(jwwang)
Attachment #8629172 -
Flags: feedback?(sotaro.ikeda.g)
Comment 2•9 years ago
|
||
Comment on attachment 8629172 [details] [diff] [review] Patch: Use MediaPromises for CDMProxy::Decrypt Review of attachment 8629172 [details] [diff] [review]: ----------------------------------------------------------------- ::: dom/media/platforms/agnostic/eme/EMEDecoderModule.cpp @@ +73,2 @@ > MOZ_ASSERT(mTaskQueue->IsCurrentThreadIn()); > + MOZ_ASSERT(aDecrypted.mSample); Is it true that aDecrypted.mSample is non-null whether aDecrypted.mStatus returns an error or not?
Attachment #8629172 -
Flags: review?(jwwang) → review+
Assignee | ||
Comment 3•9 years ago
|
||
Comment on attachment 8629172 [details] [diff] [review] Patch: Use MediaPromises for CDMProxy::Decrypt Review of attachment 8629172 [details] [diff] [review]: ----------------------------------------------------------------- ::: dom/media/platforms/agnostic/eme/EMEDecoderModule.cpp @@ +73,2 @@ > MOZ_ASSERT(mTaskQueue->IsCurrentThreadIn()); > + MOZ_ASSERT(aDecrypted.mSample); Yes. We used to make mSample null in CDMProxy::DecryptJob::PostResult() in the error case, but I removed that in this patch.
Comment 5•9 years ago
|
||
Comment on attachment 8629172 [details] [diff] [review] Patch: Use MediaPromises for CDMProxy::Decrypt From the following, the test failures was fixed by the patch. https://treeherder.mozilla.org/#/jobs?repo=try&revision=b4c3aaf7ce43
Attachment #8629172 -
Flags: feedback?(sotaro.ikeda.g) → feedback+
Comment 6•9 years ago
|
||
https://hg.mozilla.org/mozilla-central/rev/87c493cc1166
Status: NEW → RESOLVED
Closed: 9 years ago
status-firefox42:
--- → fixed
Resolution: --- → FIXED
Target Milestone: --- → mozilla42
You need to log in
before you can comment on or make changes to this bug.
Description
•