зеркало из https://github.com/mozilla/gecko-dev.git
f14b766f30
Our data indicates when the browser process populates a newly-created child process, `VirtualProtectEx` may fail with `ERROR_INVALID_ADDRESS` for some unknown reason. One possible cause is the parameter `aRemoteExeImage` of `RestoreImportDirectory` was wrong i.e. pointing to an invalid address. We simply pass the local process's imagebase as `aRemoteExeImage` based on the assumption that the same executable is mapped onto the same address in a different process, but it may not be guaranteed. To deal with that potential case, we could retrieve a correct imagebase from the handle of a remote process as we do for the plugin process. Since we're not so sure about the root cause or the effectiveness of this fix, we run it only when the first attempt to `VirtualProtectEx` failed in Nightly. Once it's confirmed, we promote this to a permanent fix. Differential Revision: https://phabricator.services.mozilla.com/D89502 |
||
---|---|---|
.. | ||
android | ||
baseprofiler | ||
build | ||
dllservices | ||
linker | ||
misc | ||
static | ||
tests | ||
moz.build |