-
wfh authored
This avoids attempting to load a Flash DLL off a network drive if doing so would not result in loading an old version of Flash. When determining which Flash to load the following algorithm is evaluated: First, a candidate list of Flash versions is compiled sourced from: - System Flash (Adobe updated) - (could be the debug version) - Bundled Flash (ships with Chrome) - Component updated Flash (updated on user data dir by component updater)* * Note this really only applies on Linux when the component updated Flash is already available at Chrome startup. The highest single version will always win. If so, just use that version. If there are two or more available version of Flash with the same version then preference is given in the following order - Flash content Debugger - Bundled Flash - Local-drive Component updated Flash - System Flash - Network-mounted component updated Flash Because of the way that the pepperflash component updater injects its version of Flash later on in Chrome load, the network drive determination is done in two places, firstly inside ChromeContentClient when building a candidate list, since Linux could have a component updated flash ready for use at this point, and secondly when the pepperflash component comes to inject the new version it will evalulate the order based on the rule above on whether to inject itself. TEST=https://docs.google.com/document/d/1iTQiaqjuHsKV4cPqSOet-eJKWb2SsJLp2ieDj_Mul4s/preview TEST=unit_tests --gtest_filter=ChromeContentClientTest.* BUG=572131 Review URL: https://codereview.chromium.org/1867833003 Cr-Commit-Position: refs/heads/master@{#389006}
73d6faae