Closed
Bug 1180610
Opened 9 years ago
Closed 9 years ago
[EME] EME plugin voucher disappearing after launch not handled
Categories
(Core :: Audio/Video, defect, P1)
Core
Audio/Video
Tracking
()
VERIFIED
FIXED
mozilla42
People
(Reporter: cpearce, Assigned: cpearce)
References
(Blocks 1 open bug)
Details
Attachments
(1 file)
2.39 KB,
patch
|
jwwang
:
review+
lmandel
:
approval-mozilla-aurora+
lmandel
:
approval-mozilla-beta+
|
Details | Diff | Splinter Review |
I missed a case in bug 1177461; if the EME plugin voucher disappears after we've started up, or right after we installed the plugin, *and* the site requesting EME does not specify a version number in the keySystem string, we'll not trigger the check to see if the plugin voucher is on disk before advertising that Adobe EME is available. This means if something is interfering with the EME plugin download/installation, we'll not properly fallback to Silverlight.
Assignee | ||
Comment 1•9 years ago
|
||
If the EME plugin voucher is removed (or fails to write, or quarantined by anti-virus) *after* installation but before we've restart, *and* if the site accessing EME doesn't specify a CDM version in the keysystem string, we will bail out of EnsureMinCDMVersion() with a success code before we hit the check to verify that the plugin voucher is on disk. So we need to move version check down to the end of EnsureMinCDMVersion().
Comment 2•9 years ago
|
||
Comment on attachment 8629864 [details] [diff] [review] Patch: Handle EME plugin voucher disappearing after installation before restart Review of attachment 8629864 [details] [diff] [review]: ----------------------------------------------------------------- ::: dom/media/eme/MediaKeySystemAccess.cpp @@ +185,5 @@ > } > } > #endif > > + if (aMinCdmVersion == NO_CDM_VERSION) { I think we can get rid of this if block for we also return MediaKeySystemStatus::Available at the bottom.
Attachment #8629864 -
Flags: review+
Assignee | ||
Comment 4•9 years ago
|
||
Aurora Try push: https://hg.mozilla.org/try/pushloghtml?changeset=95c08ae9e92f Beta Try push: https://treeherder.mozilla.org/#/jobs?repo=try&revision=c7ab2808979f
Assignee | ||
Comment 5•9 years ago
|
||
Comment on attachment 8629864 [details] [diff] [review] Patch: Handle EME plugin voucher disappearing after installation before restart Approval Request Comment [Feature/regressing bug #]: EME [User impact if declined]: Without this patch, some users who have their EME plugin installation being interfered with by some unknown actor, won't be able to fallback to Silverlight, so their premium video won't work. We're seeing Adobe's EME plugin files disappearing from disk. My previous checks to detect this wouldn't trigger if script called the API to query for Adobe EME in a certain way, so we need to cover that as well. [Describe test coverage new/current, TreeHerder]: Local testing. We can't test this case with automation as it's specific to Adobe. We have a lot of other mochitests for the EME feature in general however. [Risks and why]: Low; we're just changing the order of some conditionals. [String/UUID change made/needed]: None.
Attachment #8629864 -
Flags: approval-mozilla-beta?
Attachment #8629864 -
Flags: approval-mozilla-aurora?
Assignee | ||
Updated•9 years ago
|
Flags: needinfo?(cpearce)
Assignee | ||
Comment 6•9 years ago
|
||
[Tracking Requested - why for this release]: We need this in 40; it fixes a contributor to our EME error rate.
status-firefox39:
--- → wontfix
status-firefox40:
--- → affected
status-firefox41:
--- → affected
tracking-firefox40:
--- → ?
tracking-firefox41:
--- → ?
Updated•9 years ago
|
status-firefox42:
--- → affected
tracking-firefox42:
--- → +
Comment 7•9 years ago
|
||
Comment on attachment 8629864 [details] [diff] [review] Patch: Handle EME plugin voucher disappearing after installation before restart Although this has no yet hit m-c, it is an ordering change the Chris has tested to the best of his ability. We need to get this tested with an audience to know if it is effective. Aurora+ Beta+
Attachment #8629864 -
Flags: approval-mozilla-beta?
Attachment #8629864 -
Flags: approval-mozilla-beta+
Attachment #8629864 -
Flags: approval-mozilla-aurora?
Attachment #8629864 -
Flags: approval-mozilla-aurora+
Comment 9•9 years ago
|
||
Blech, wish I would have noticed that Try push first. Backed out for bustage. https://treeherder.mozilla.org/logviewer.html#?job_id=417118&repo=mozilla-beta https://hg.mozilla.org/releases/mozilla-beta/rev/1cf45ce3ff0e
Chris, this is one of the bugs you wanted in 40 Beta2 but the fix was backed out due to bustage.
Nuked the offending line. https://hg.mozilla.org/releases/mozilla-beta/rev/53763147728b
Assignee | ||
Updated•9 years ago
|
Flags: needinfo?(cpearce)
https://hg.mozilla.org/mozilla-central/rev/9dbcee65bcee
Status: NEW → RESOLVED
Closed: 9 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla42
Assignee | ||
Updated•9 years ago
|
Updated•9 years ago
|
Flags: qe-verify+
Comment 14•9 years ago
|
||
(In reply to Edwin Flores [:eflores] [:edwin] from comment #12) > Nuked the offending line. > > https://hg.mozilla.org/releases/mozilla-beta/rev/53763147728b FYI, this missed the cut-off for 40.0b2. It'll be in b3 at the end of the week.
Comment 15•9 years ago
|
||
I used old Nightly from 2015-06-20 on Windows 7 64-bit to reproduce the initial issue, in order to verify the fix. - I started old Nightly, I waited for EME plugin to install, connected to a US proxy in order to access Netflix (for some reason plugin does not install using proxy, or maybe I did not wait more then 10 minutes), accessed some videos from Netflix, no files were missing from eme-adobe folder. Restarted the browser, crashed it, files are still there and videos are played normally. - Using new profile I deleted .voucher file, played a few videos from Netflix and they worked as expected using EME plugin. After I restarted all files .voucher, .info, .dll files were gone but videos still worked as expected using EME plugin. Shouldn`t videos use Silverlight in this case? Same behavior using Firefox 40 beta 2. I know this fix will enter 40 beta 3, but I was wondering if I`m testing this correctly. Any guidance for manual verification, demo pages would be appreciated.
Flags: needinfo?(cpearce)
Assignee | ||
Comment 16•9 years ago
|
||
(In reply to Bogdan Maris, QA [:bogdan_maris] from comment #15) >(for some reason plugin does not install > using proxy, or maybe I did not wait more then 10 minutes) Really?? That's really interesting! What proxy are you using??
Flags: needinfo?(bogdan.maris)
Assignee | ||
Comment 17•9 years ago
|
||
(In reply to Bogdan Maris, QA [:bogdan_maris] from comment #15) > I used old Nightly from 2015-06-20 on Windows 7 64-bit to reproduce the > initial issue, in order to verify the fix. > > - I started old Nightly, I waited for EME plugin to install, connected to a > US proxy in order to access Netflix (for some reason plugin does not install > using proxy, or maybe I did not wait more then 10 minutes), accessed some > videos from Netflix, no files were missing from eme-adobe folder. Restarted > the browser, crashed it, files are still there and videos are played > normally. > - Using new profile I deleted .voucher file, played a few videos from > Netflix and they worked as expected using EME plugin. After I restarted all > files .voucher, .info, .dll files were gone but videos still worked as > expected using EME plugin. Shouldn`t videos use Silverlight in this case? What us happening in this case is at startup we check to ensure all files are there, and if not we delete them and the next time you try to use Netflix the EME plugin will re-download. So you should see the EME plugin files reappear in the profile dir. So we should not fallback to Silverlight, we should re-install the EME plugin, and EME should work. > Any guidance for manual > verification, demo pages would be appreciated. The problem is that we think something is deleting the voucher file after install. So STR is: * Wait for EME plugin to install, or otherwise ensure it's installed. * Delete the voucher file. * Try to use Netflix. The EME plugin should re-install, and it should play. Without this fix (i.e. in Firefox 38 or 39), with the above STR you should see an error on Netflix.
Flags: needinfo?(cpearce)
Comment 18•9 years ago
|
||
(In reply to Chris Pearce (:cpearce) from comment #16) > (In reply to Bogdan Maris, QA [:bogdan_maris] from comment #15) > >(for some reason plugin does not install > > using proxy, or maybe I did not wait more then 10 minutes) > > Really?? That's really interesting! What proxy are you using?? I used some found online, from: http://www.us-proxy.org/. I did tried now with other IPs and I think that the bad connection may have caused the installation of EME plugin to fail, since now the plugin installs in 2 - 20 minutes with some IPs and fail with others.
Flags: needinfo?(bogdan.maris)
Comment 19•9 years ago
|
||
Reproduced with Nightly 2015-06-19, under Windows 7 64-bit: with STR from comment 17, I can see the error on Netflix -> http://i.imgur.com/0zDrCHs.png Verified fixed with Firefox 40 beta 3 (Build ID: 20150709163524), under Windows 7 64-bit and Windows 10 32-bit.
Comment 20•9 years ago
|
||
Confirming this fix with 42.0b5 (Build ID: 20151008162217) too, under Windows 7 64-bit and Windows 10 32-bit.
You need to log in
before you can comment on or make changes to this bug.
Description
•