Bug 1570440 - [Web content] Firefox Crashes on CNN.COM (Windows7)
This change addresses an issue where VRShMem can be in an invalid state when
there is no VR process available. In this case, the VRExternalShmem struct is
allocated on the heap rather than accessed via shared memory. When VRService
stops, it clears this pointer, but cannot re-access it when it restarts. Thus,
this results in a nullptr crash when a tab Enters, Exits, and Re-enters VR.
The fix is to distinguish between in-proc heap allocation vs cross-proc shared
memory so that VRService can decide to make the call to LeaveShMem in its Stop
function. This will keep the heap allocation alive across service restarts and
prevent the null crash.
Differential Revision: https://phabricator.services.mozilla.com/D40681
--HG--
extra : moz-landing-system : lando
This patch changes the alignd icon of the awesome bar to the shield icon
if the pageproxystate is valid. This is needed since the tracking
protection icon would be at the first position if the 'pageproxystate'
is valid.
Differential Revision: https://phabricator.services.mozilla.com/D40981
--HG--
extra : moz-landing-system : lando
All built-in engines have migrated from OpenSearch to WebExtensions.
WebExtensions do not support resource: or chrome:-URLs in their
`favicon_url` field, so the "resource:" and "chrome:" URLs can only be
used by external opensearch XML files. These should not rely on internal
resources from omni.ja, as the bug shows. So just drop support for
"chrome:" and "resource:"-URLs, as we don't need them any more.
Current OpenSearch engines that relied on chrome/resource:-URLs can
either replace the URL with a data:-URL, or migrate to WebExtensions.
Differential Revision: https://phabricator.services.mozilla.com/D40345
--HG--
extra : moz-landing-system : lando
Replace the "is heuristic?" logic for hiding keywords in keyword offers with something more flexible. Here's how the top sites extension uses this new `keywordOffer` payload property: 8408d13d2f
When a result's title is hidden, use the title color for the secondary color.
Differential Revision: https://phabricator.services.mozilla.com/D40898
--HG--
extra : moz-landing-system : lando
In the event of a JSContext having gone unused between the last triggerFreeUnusedMemory() and the current one, GlobalHelperThreadState should free the temp LifoAlloc from the main thread. This isn't safe for ContextData and requires tempLifoAlloc to take a different type.
Differential Revision: https://phabricator.services.mozilla.com/D40732
--HG--
extra : moz-landing-system : lando
That way we don't need to re-request a reflow. This code can run from reflow
itself, so requesting a reflow from here can break invariants.
There's the question of whether this code should be running at all for
continuations, but this patch fixes a bug regardless of whether we do that or
not.
Differential Revision: https://phabricator.services.mozilla.com/D41021
--HG--
extra : moz-landing-system : lando
The previous code was assuming that codeRanges indices were matching the
function indices. This is correct only when function batches are sent to the
compiler backend in order, with one thread, but it is false otherwise.
This adjusts the mechanism so that, if we just compiled N functions, it reads
the last N code ranges that just have been pushed back, and feeds the
disassembler with those last N code ranges instead.
Differential Revision: https://phabricator.services.mozilla.com/D40824
--HG--
extra : moz-landing-system : lando
This patch fixes four things at once:
(1) Consolidate supporting raptor measurements into one PERFHERDER_DATA output per type. For example, with this change, all power data will be grouped into one PERFHERDER_DATA output.
(2) Output perfherder-data-<DATA_TYPE>.json for each supporting measurement instead of overwriting perfherder-data.json which contains the regular raptor test results.
(3) Take an average of the supporting measurements when particular unit's are specified. In this case, the '%' unit makes us take the average instead of the sum of the measurements.
(4) Remove the redundant test name entry that prefixes all power subtest entries.
Differential Revision: https://phabricator.services.mozilla.com/D40667
--HG--
extra : moz-landing-system : lando
This patch does two things:
1. We refactor the resolution of function pointer and return type so that we
may support additional calling conventions besides just __stdcall;
2. We refactor DynamicallyLinkedFunctionPtr into a base class, and create
StaticDynamicallyLinkedFunctionPtr to specifically handle the static local
use case.
Differential Revision: https://phabricator.services.mozilla.com/D40885
--HG--
extra : moz-landing-system : lando
This patch ressurects HiddenFrame.jsm and uses it when handling
the --screenshot command line argument to load the requested page
in a content process. The actual logic for grabbing the image is
also ported to a JSWindowActor. The test for this feature remains
suboptimal as described in the bug.
Differential Revision: https://phabricator.services.mozilla.com/D40148
--HG--
rename : browser/components/shell/HeadlessShell.jsm => browser/components/shell/ScreenshotChild.jsm
extra : moz-landing-system : lando
We were adding a before pseudo element on message hover, which
was causing reflows (which are quite expansive in console).
We fix this by always rendering a before pseudo element,
only changing its background color on hover.
Differential Revision: https://phabricator.services.mozilla.com/D40590
--HG--
extra : moz-landing-system : lando
Refactor the gtest code because it confused me while adding new tests.
This patch focus on refining utility function but it also contains other
minor refinements.
Changes includes:
1. Add comments to utility function
2. Move common utility functions to Common.cpp and remove duplicates
3. Header file removal and reorder
4. Unify MPL commnetc
5. Replace anonymouse namespace with static function
Differential Revision: https://phabricator.services.mozilla.com/D37532
--HG--
extra : moz-landing-system : lando
This patch modifies `DllServices::Get()` to use a magic static to initialize
itself, thus ensuring atomicity and thread safety.
We also remove a redundant kung-fu death grip, as it causes
`DllServices->EnableFull` to reenter `DllServices::Get` but is unnecessary.
Differential Revision: https://phabricator.services.mozilla.com/D40891
--HG--
extra : moz-landing-system : lando