gecko-dev/mozglue
Toshihito Kikuchi f14b766f30 Bug 1662560 - Retrieve the imagebase of the child process's executable from a process handle. r=mhowell
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
2020-09-08 22:13:27 +00:00
..
android Bug 689178 - Remove crash-reporter hooks to externally provide library mappings. r=gsvelto 2020-06-25 08:43:23 +00:00
baseprofiler Bug 1662994 - Fix non-MOZ_GECKO_PROFILER_BUILD - r=canaltinova 2020-09-07 10:11:16 +00:00
build Bug 1621786 - Fix an incomplete skia suppression. r=mattwoodrow 2020-08-23 09:42:02 +00:00
dllservices Bug 1630444: Part2 - Add HandleLauncherError to DllServices. r=aklotz 2020-08-26 19:01:40 +00:00
linker Bug 1519636 - Reformat recent changes to the Google coding style r=andi 2020-07-14 09:34:19 +00:00
misc Bug 1662560 - Retrieve the imagebase of the child process's executable from a process handle. r=mhowell 2020-09-08 22:13:27 +00:00
static
tests Bug 1662994 - Fix non-MOZ_GECKO_PROFILER_BUILD - r=canaltinova 2020-09-07 10:11:16 +00:00
moz.build