Flash component sometimes not pulled on demand |
||||||||||
Issue descriptionVersion: 54.0.2840.0 canary (64-bit) OS: Windows 8.1 What steps will reproduce the problem? (1) Install canary (2) Go to http://wwwns.akamai.com/hdnetwork/demo/flash/default.html (3) Notice flash doesn't download What is the expected output? Flash downloads and runs What do you see instead? Flash does not download. Please use labels and text to provide additional information. Additional findings: Visiting chrome://components and clicking "Check for update" on the "Adobe Flash Player" component fixes this, but doesn't fix the currently opened tab, I need to open in a new tab for some reason. Visiting some sites does correctly trigger auto download e.g. http://www.adobe.com/software/flash/about/ but notice the first Flash object does not load, only the second one.
,
Aug 26 2016
Yes: akami is using swfobject.js to try to detect the presence of Flash; looks like the browser (truthfully) responds that it doesn't have Flash, and swfobject.js inserts a <noscript> tag containing an <object>; but since technically scripting is enabled Chrome skips the <noscript> contents. Since the site didn't actually request Flash, but only probed for it, Chrome doesn't initiate a download of Flash. IIUC, swfobject.js is pretty widely used and so maybe we have to do something here. The only remediation I can think of is to hook navigator.plugins to (falsely) state that we do have an implementation of Flash. (Unclear what we would use for a version number, etc.) Navigator.plugins is a synchronous API so we can't actually do the download/install as part of answering the query. Anthony, how do you want to proceed?
,
Aug 26 2016
(Er, one minor correction, it is not swfobject.js inserting the <noscript> tag; default.html actually has the <noscript> specified as their fallback content. Contrast the adobe page, which falls back to some html showing the flash icon in the banner.)
,
Aug 26 2016
If there is a simple path to doing it, we probably should do it, since it will reflect the initial experience for new users (at least for the first 6 minutes) and we'd like for that to be seamless.
,
Aug 26 2016
I think this could be a pretty significant oob regression. Do we have metrics to record when this would be happening, perhaps we can decide what to do based on those, before this ships to stable?
,
Aug 26 2016
I think it would be nice if we could find a way to magically do the right thing for the user. I've been on the short end of the stick with EME stuff after a fresh install, and it's less than fun. I wouldn't want to put non-power users through that. Just my two cents.
,
Aug 26 2016
Another idea (or something we could do as well, regardless of the solution here) is to make sure all paths from a search for "flash not working" end up on a page that tells users to try updating the component from chrome://components. Right now I see those searches mostly end up on Adobe controlled sites, and a casual navigation of the links there don't suggest doing a manual component update. https://helpx.adobe.com/flash-player/kb/enabling-flash-player-chrome.html we might need a page similar to https://support.google.com/chrome/answer/6258784?hl=en that explains this?
,
Aug 26 2016
I believe that pnacl handles this by advertising it's presence in navigator.plugins, prior to it's install.
,
Aug 26 2016
My main concern is being able to distinguish the cases of "Flash is not present because we haven't downloaded it yet" and "Flash is not present because the user has disabled it (e.g. chrome://plugins → disable)." Additionally, seems unwise to falsely advertise Flash if component updates have been disabled (by group policy, flag, etc). If pnacl has already solved this maybe we can copy what they did.
,
Aug 26 2016
Maybe advertise in navigator.plugins except if the plugin is disabled (either by user or policy).
,
Aug 26 2016
My opinion is that this is a blocker for the launch of this feature, given the number of sites that use some form of Flash detection rather than just instantiating the object.
,
Aug 26 2016
,
Aug 26 2016
Marking as RBS.
,
Aug 30 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/cd59e9b913623e8fec8bbc9d5517610bc1bfc9a7 commit cd59e9b913623e8fec8bbc9d5517610bc1bfc9a7 Author: waffles <waffles@chromium.org> Date: Tue Aug 30 04:34:44 2016 Register a fake Flash with chrome://plugins during browser start-up. This enables websites to query for the presence of Flash using navigator.plugins and navigator.mimeTypes even when we don't actually have it. TEST=https://docs.google.com/a/google.com/document/d/1P0WslUXMUO9azLmWZ0AtQ-sGExWbHttr_2gQWDXf3MY/pub BUG= 641448 ,641884, 641657 Review-Url: https://codereview.chromium.org/2284053002 Cr-Commit-Position: refs/heads/master@{#415100} [modify] https://crrev.com/cd59e9b913623e8fec8bbc9d5517610bc1bfc9a7/chrome/browser/plugins/plugin_info_message_filter.cc [modify] https://crrev.com/cd59e9b913623e8fec8bbc9d5517610bc1bfc9a7/chrome/common/chrome_content_client.cc [modify] https://crrev.com/cd59e9b913623e8fec8bbc9d5517610bc1bfc9a7/chrome/common/chrome_content_client.h [modify] https://crrev.com/cd59e9b913623e8fec8bbc9d5517610bc1bfc9a7/chrome/common/chrome_content_client_constants.cc
,
Aug 30 2016
,
Aug 31 2016
Your change meets the bar and is auto-approved for M54 (branch: 2840)
,
Sep 1 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/e450b2360ecde771cdfb67c647fef7523bde435f commit e450b2360ecde771cdfb67c647fef7523bde435f Author: Joshua Pawlicki <waffles@google.com> Date: Thu Sep 01 23:12:11 2016 Register a fake Flash with chrome://plugins during browser start-up. This enables websites to query for the presence of Flash using navigator.plugins and navigator.mimeTypes even when we don't actually have it. TEST=https://docs.google.com/a/google.com/document/d/1P0WslUXMUO9azLmWZ0AtQ-sGExWbHttr_2gQWDXf3MY/pub BUG= 641448 ,641884, 641657 Review-Url: https://codereview.chromium.org/2284053002 Cr-Commit-Position: refs/heads/master@{#415100} (cherry picked from commit cd59e9b913623e8fec8bbc9d5517610bc1bfc9a7) Review URL: https://codereview.chromium.org/2303983002 . Cr-Commit-Position: refs/branch-heads/2840@{#113} Cr-Branched-From: 1ae106dbab4bddd85132d5b75c670794311f4c57-refs/heads/master@{#414607} [modify] https://crrev.com/e450b2360ecde771cdfb67c647fef7523bde435f/chrome/browser/plugins/plugin_info_message_filter.cc [modify] https://crrev.com/e450b2360ecde771cdfb67c647fef7523bde435f/chrome/common/chrome_content_client.cc [modify] https://crrev.com/e450b2360ecde771cdfb67c647fef7523bde435f/chrome/common/chrome_content_client.h [modify] https://crrev.com/e450b2360ecde771cdfb67c647fef7523bde435f/chrome/common/chrome_content_client_constants.cc
,
Sep 1 2016
,
Sep 6 2016
Fix is not landed yet for the Chrome Dev Version - 54.0.2840.14, hence couldn't verity it. Would monitor this issue and update it accordingly. Base Commit Position for Chrome Dev Version - 54.0.2840.14 is 414607
,
Sep 6 2016
Confirming that Flash works fine in latest Dev - 54.0.2840.14. Flash Version : 22.0.0.209
Fix landed at Revision : refs/branch-heads/2840@{#113} and 54.0.2840.14. was cut @ : branch-heads/2840@{#158}
Testing URLs.
=============
http://wwwns.akamai.com/hdnetwork/demo/flash/default.html
http://www.cnn.com/videos
http://www.adobe.com/software/flash/about/
,
Oct 27 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/e450b2360ecde771cdfb67c647fef7523bde435f commit e450b2360ecde771cdfb67c647fef7523bde435f Author: Joshua Pawlicki <waffles@google.com> Date: Thu Sep 01 23:12:11 2016 Register a fake Flash with chrome://plugins during browser start-up. This enables websites to query for the presence of Flash using navigator.plugins and navigator.mimeTypes even when we don't actually have it. TEST=https://docs.google.com/a/google.com/document/d/1P0WslUXMUO9azLmWZ0AtQ-sGExWbHttr_2gQWDXf3MY/pub BUG= 641448 ,641884, 641657 Review-Url: https://codereview.chromium.org/2284053002 Cr-Commit-Position: refs/heads/master@{#415100} (cherry picked from commit cd59e9b913623e8fec8bbc9d5517610bc1bfc9a7) Review URL: https://codereview.chromium.org/2303983002 . Cr-Commit-Position: refs/branch-heads/2840@{#113} Cr-Branched-From: 1ae106dbab4bddd85132d5b75c670794311f4c57-refs/heads/master@{#414607} [modify] https://crrev.com/e450b2360ecde771cdfb67c647fef7523bde435f/chrome/browser/plugins/plugin_info_message_filter.cc [modify] https://crrev.com/e450b2360ecde771cdfb67c647fef7523bde435f/chrome/common/chrome_content_client.cc [modify] https://crrev.com/e450b2360ecde771cdfb67c647fef7523bde435f/chrome/common/chrome_content_client.h [modify] https://crrev.com/e450b2360ecde771cdfb67c647fef7523bde435f/chrome/common/chrome_content_client_constants.cc |
||||||||||
►
Sign in to add a comment |
||||||||||
Comment 1 by lafo...@chromium.org
, Aug 26 2016