Toshihito Kikuchi c1e5d642df Bug 1609451 - Skip ShellExecuteByExplorer to open a uri in Thunderbird. r=froydnj
We use `ShellExecuteByExplorer` to open a uri because applications may not
support the mitigation policies inherited from our process.

Unlike Firefox, Thunderbird runs `ShellExecuteByExplorer` to launch a browser
to open an HTTP/HTTPS uri.  If a uri includes credentials like
http://user:password@domain.com/, `ShellExecuteByExplorer` succceds, but
explorer.exe refuses to open the uri by design.  In this case the fallback to
`ShellExecuteExW` does not happen because the API is async and no error is
returned

The proposed fix is to skip `ShellExecuteByExplorer` if it's Thunderbird.
Because Thunderbird does not apply additional mitigation policies which may
cause compat issues, we don't need to run `ShellExecuteByExplorer` in the
first place.

Differential Revision: https://phabricator.services.mozilla.com/D67339

--HG--
extra : moz-landing-system : lando
2020-03-19 16:09:18 +00:00
..