Commit Graph

671033 Commits

Author SHA1 Message Date
Tim Nguyen
e043df8d78 Bug 1534455 - Convert autocomplete binding to a customized input element. r=dao,bgrins
Differential Revision: https://phabricator.services.mozilla.com/D33250

--HG--
rename : toolkit/content/widgets/autocomplete.xml => toolkit/content/widgets/autocomplete-input.js
extra : moz-landing-system : lando
2019-09-17 06:22:42 +00:00
Masayuki Nakano
bbcb8b3a63 Bug 1574852 - part 113: Move TextEditRules::CreateTrailingBRIfNeeded() and TextEditRules::CollapseSelectionToTrailingBRIfNeeded() to TextEditor r=m_kato
Differential Revision: https://phabricator.services.mozilla.com/D45496

--HG--
extra : moz-landing-system : lando
2019-09-17 02:47:49 +00:00
Masayuki Nakano
5b0eb574be Bug 1574852 - part 112: Make TextEditor::InsertWithQuotationsAsSubAction() virtual and HTMLEditor override it r=m_kato
It requires different preparation in `TextEditor` and `HTMLEditor` but it's
not split.  Therefore, we should make it virtual and override it to use
different preparation code.  Fortunately, its code is enough simple to
duplicate.

Additionally, this removes unnecessary code from `TextEditRules` and
`HTMLEditRules` including `WillDoAction()` and `DidDoAction()`!

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

--HG--
extra : moz-landing-system : lando
2019-09-17 02:47:26 +00:00
Masayuki Nakano
119bd889bd Bug 1574852 - part 111: Make methods calling HTMLEditRules::WillDoAction() with EditSubAction::eInsertElement stop using it r=m_kato
Unfortunately, `EditSubAction::eInsertElement` is used by 4 methods and one
of them is too big method.  But we should move what old `WillInsert()` does
into them for stop making anybody use `HTMLEditRules`.

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

--HG--
extra : moz-landing-system : lando
2019-09-17 03:13:09 +00:00
Gerald Squelart
060b8c8c50 Bug 1581049 - Use AutoCStrings in StreamSamplesToJSON to avoid mallocs - r=gregtatum
Profiling the profiler showed a lot of time spent allocating memory for the
frame-address strings, almost half the time of `StreamSamplesToJSON`!
Using an "Auto" string will prevent these allocations in most cases.

Also removed the `printf("0x%llx")`, instead just appending "0x" and an hex-
formatted number with `AppendInt()` (which handles 32- and 64-bit numbers
separately, so there is no more needs to do a double-cast to avoid sign
extensions -- There is still a double cast, but a no-op one to fix the type to
either `uint32_t` or `uint64_t`).

Using an Auto string for nearby frame labels as well.

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

--HG--
extra : moz-landing-system : lando
2019-09-17 01:54:50 +00:00
Gerald Squelart
5172b40969 Bug 1581049 - Gather stack sample data into fewer entries - r=gregtatum
Stack samples may contain up to hundreds or thousands of entries, which need to
be copied (during sampling and duplicating), and also mostly skipped when
creating the JSON output for other threads or other types of profile data.

This patch gathers all sample legacy entries (apart from the thread id and the
timestamp) into a single non-legacy entry, which is much faster to copy or
skip. The preceding timestamp now has a distinct Kind (`TimeBeforeCompactStack`)
to know whether to handle legacy entries of the new `CompactStack` entry kind.

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

--HG--
extra : moz-landing-system : lando
2019-09-17 01:54:37 +00:00
Gerald Squelart
541c78764a Bug 1581049 - BlocksRingBuffer (de)serializer uses optimized inter-ModuloBuffer copier - r=gregtatum
Instead of copying `BlocksRingBuffer` data byte-by-byte (using iterators byte
dereferencers), we can now use `ModuloBuffer::Iterator::ReadInto(Iterator&)` to
copy them using a small number of `memcpy`s.

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

--HG--
extra : moz-landing-system : lando
2019-09-17 01:54:21 +00:00
Gerald Squelart
4c2ab062ce Bug 1581049 - ModuloBuffer::Iterator::ReadInto(ModuloBuffer::Iterator&) - r=gregtatum
Some objects are copied byte-by-byte to/from `ModuloBuffer`s.
E.g., serialized `BlocksRingBuffer`s, or duplicate stacks. (And more to come.)

`Iterator::ReadInto(Iterator&)` optimizes these copies by using the minimum
number of `memcpy`s possible.

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

--HG--
extra : moz-landing-system : lando
2019-09-17 01:54:03 +00:00
Gerald Squelart
6b49069f3e Bug 1578329 - Use profiler_can_accept_markers() where appropriate - r=gregtatum
In places where profiler_is_active() was used around a profiler_add_marker() (or
similar) call, replace it with profiler_can_accept_markers().

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

--HG--
extra : moz-landing-system : lando
2019-09-17 01:53:56 +00:00
Gerald Squelart
b643004d63 Bug 1578329 - profiler_can_accept_markers(), don't store markers when paused - r=gregtatum
profiler_can_accept_markers() is a fast and racy check that markers would
currently be stored, it should be used around potentially-expensive calls to
add markers.

And now markers are no longer stored when the profiler is paused. (Note that the
profiler is paused when a profile is being stored, this will help make this
operation faster.)

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

--HG--
extra : moz-landing-system : lando
2019-09-17 01:53:54 +00:00
Gerald Squelart
7d435fc17a Bug 1578327 - Discard old data just before streaming - r=gregtatum
Since all profiler data is now stored inside ProfileBuffer, there is no real
need to continuously discard old data during sampling (this was particularly
useful to reclaim memory taken by old markers&payloads).

Instead, we can now just discard the old data once, just before starting to
stream it to JSON.

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

--HG--
extra : moz-landing-system : lando
2019-09-17 01:53:52 +00:00
Gerald Squelart
79e1b2e357 Bug 1576555 - Remove unneeded ProfilerMarker - r=gregtatum
Now that what was in ProfilerMarker is stored directly in `BlocksRingBuffer`,
there is no need for this class anymore!
This also removes all the pointer management around it (when added to a TLS
list, moved during sampling, deleted when expired).

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

--HG--
extra : moz-landing-system : lando
2019-09-17 01:53:50 +00:00
Gerald Squelart
8364b4ebdb Bug 1576555 - Don't store temporary ProfilerMarkerPayloads in UniquePtrs - r=gregtatum
Since payloads are not kept alive long after they have been serialized, we can
just create them on the stack and pass a reference to their base (or pointer,
`nullptr` representing "no payloads") to `profiler_add_marker()`.

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

--HG--
extra : moz-landing-system : lando
2019-09-17 02:32:21 +00:00
Gerald Squelart
b48590ff79 Bug 1576555 - Store markers directly into BlocksRingBuffer - r=gregtatum
Markers and their payloads can now be serialized straight into the profiler's
`BlocksRingBuffer`, which is now thread-safe to allow such concurrent accesses
(even when gPSMutex is not locked).
This already saves us from having to allocate a `PayloadMarker` on the heap, and
from having to manage it in different lists.

The now-thread-safe `BlocksRingBuffer` in `CorePS` cannot be used inside the
critical section of `SamplerThread::Run`, because any mutex function could hang
because of the suspended thread (even though they functionally don't appear to
interact). So the sampler now uses a local `BlocksRingBuffer` without mutex.
As a bonus, the separate buffer helps reduce the number of concurrent locking
operations needed when capturing the stack.

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

--HG--
extra : moz-landing-system : lando
2019-09-17 01:52:16 +00:00
Gerald Squelart
6d95d503f5 Bug 1576555 - BlocksRingBuffer::AppendContents(const BlocksRingBuffer&) - r=gregtatum
Copy the full contents of BlocksRingBuffer into another one.
This is mainly useful to use a temporary buffer to store some data without
contentions, and then integrate the temporary buffer into the main one.

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

--HG--
extra : moz-landing-system : lando
2019-09-17 01:51:53 +00:00
Gerald Squelart
5b86107991 Bug 1575448 - De/serialize ProfilerMarkerPayload derived objects - r=gregtatum
Payloads will serialize themselves into a `BlocksRingBuffer` entry when first
captured.
Later they will be deserialized, to stream JSON for the output profile.

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

--HG--
extra : moz-landing-system : lando
2019-09-17 01:51:41 +00:00
Gerald Squelart
64f0dcdf95 Bug 1575448 - ProfilerMarkerPayload::CommonProps - r=gregtatum
The common data members stored in the ProfilerMarkerPayload base class can be
gathered into a struct, which will make it easier to pass around, especially
when a derived object is constructed with these common properties.

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

--HG--
extra : moz-landing-system : lando
2019-09-17 01:51:18 +00:00
Gerald Squelart
a14e2c944d Bug 1576554 - {S,Des}erializer<ProfilerBacktrace> - r=gregtatum
Markers may contain backtraces, so we need to be able to de/serialize them.
This involves de/serializing the underyling `BlocksRingBuffer`.

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

--HG--
extra : moz-landing-system : lando
2019-09-17 02:16:04 +00:00
Gerald Squelart
4b285f78a5 Bug 1576554 - Test baseprofiler::profiler_get_backtrace - r=gregtatum
Add basic testing of `profiler_get_backtrace` before working on serializing it.

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

--HG--
extra : moz-landing-system : lando
2019-09-17 01:50:49 +00:00
Gerald Squelart
003cded47d Bug 1576551 - Store BlocksRingBuffer outside of ProfileBuffer - r=gregtatum
The main `BlocksRingBuffer`s will be stored in `CorePS` (outside of
`ProfileBuffer`s), as we need to be able to safely access the underlying buffers
when profilers are not enabled.

Also `ProfilerBacktrace` will own the `BlocksRingBuffer` that its captured
`ProfileBuffer` uses.

Taking this opportunity to rename the different `mBuffer`s to more useful names.

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

--HG--
extra : moz-landing-system : lando
2019-09-17 02:12:42 +00:00
Gerald Squelart
c538807a81 Bug 1576551 - Assume capacity is in 8-byte entries - r=gregtatum
Now that we are using a byte-oriented `BlocksRingBuffer` instead of an array of
9-byte `ProfileBufferEntry`'s, internally the profiler sets the buffer size in
bytes. However all external users (popup, tests, etc.) still assume that the
requested capacity is in entries!

To limit the amount of changes, we will keep assuming externally-visible
capacities are in entries, and convert them to bytes.
Even though entries used to be 9 bytes each, and `BlocksRingBuffer` adds 1 byte
for the entry size, some entries actually need less space (e.g., 32-bit numbers
now take 6 bytes instead of 9), so converting to less than 9 bytes per entry is
acceptable.
We are settling on 8 bytes per entry: It's close to 9, and it's a power of two;
since the effective number of entries was a power of two, and `BlocksRingBuffer`
also uses a power of two size in bytes, this convertion keeps sizes in powers of
two.

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

--HG--
extra : moz-landing-system : lando
2019-09-17 01:50:19 +00:00
Gerald Squelart
71e4f99d21 Bug 1576551 - Use BlocksRingBuffer in ProfileBuffer - r=gregtatum
This just replaces `ProfileBuffer`'s self-managed circular buffer with a
`BlocksRingBuffer`.

That `BlocksRingBuffer` does not need its own mutex (yet), because all uses go
through gPSMutex-guarded code.

`ProfileBuffer` now also pre-allocates a small buffer for use in
`DuplicateLastSample()`, this avoids multiple mallocs at each sleeping thread
stack duplication.

Note: Internal "magic" sizes have been multiplied by 8 (and tweaked upwards, to
handle bigger stacks), because they originally were the number of 9-byte
entries, but now it's the buffer size in bytes. (And entries can now be smaller
than 9 bytes, so overall the capacity in entries should be similar or better.)
However, external calls still think they are giving a number of "entries", this
will be handled in the next patch.

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

--HG--
extra : moz-landing-system : lando
2019-09-17 01:49:59 +00:00
Gerald Squelart
e8ea7f331e Bug 1576551 - AUTO_PROFILER_STATS(locked_profiler_stream_json_for_this_process) - r=gregtatum
Add some stats (off by default) around streaming JSON, as the following patches
may affect it.

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

--HG--
extra : moz-landing-system : lando
2019-09-17 01:49:37 +00:00
Gerald Squelart
d20384e398 Bug 1580091 - Use BaseProfilerMaybeMutex in BlocksRingBuffer - r=gregtatum
In some situations we will *need* to use a `BlocksRingBuffer` that absolutely
does not use a mutex -- In particular in the critical section of
`SamplerThread::Run()`, when a thread is suspended, because any action on any
mutex (even a private one that no-one else interacts with) can result in a hang.

As a bonus, `BlocksRingBuffer`s that are known not to be used in multi-thread
situations (e.g., backtraces, extracted stacks for duplication, etc.) will waste
less resources trying to lock/unlock their mutex.

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

--HG--
extra : moz-landing-system : lando
2019-09-17 01:49:24 +00:00
Gerald Squelart
44511f2936 Bug 1580091 - BaseProfilerMaybeMutex and BaseProfilerMaybeAutoLock - r=gregtatum
`BaseProfilerMaybeMutex` wraps a `BaseProfilerMutex` inside a `Maybe`.
The decision to use a mutex or not is set at construction time.
If there is no mutex, all operations do nothing (at the small cost of checking
if the mutex is present.)

`BaseProfilerMaybeAutoLock` is the recommented RAII object to lock and
automatically unlock a `BaseProfilerMaybeMutex` until the end of a block scope.

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

--HG--
extra : moz-landing-system : lando
2019-09-17 01:49:07 +00:00
Gurzau Raul
1d0e84d2ec Backed out 2 changesets (bug 1573245) for Windows build bustages at WebAuthnManager.cpp on a CLOSED TREE.
Backed out changeset 0bf953d07a4f (bug 1573245)
Backed out changeset cfdf258c11ae (bug 1573245)
2019-09-17 08:40:27 +03:00
J.C. Jones
c119c83cd4 Bug 1573245 - Include BindingUtils.h for WebAuthnManager on a CLOSED TREE
Differential Revision: https://phabricator.services.mozilla.com/D46109

--HG--
extra : moz-landing-system : lando
2019-09-17 05:16:26 +00:00
sotaro
33aa5e8fda Bug 1581307 - Remove wr::WrExternalImageId r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D45937

--HG--
extra : moz-landing-system : lando
2019-09-16 22:13:16 +00:00
Brian Hackett
9e43080ec9 Bug 1581418 - Include more properties when logging objects, r=jlast.
Differential Revision: https://phabricator.services.mozilla.com/D45961

--HG--
rename : devtools/client/webreplay/mochitest/browser_dbg_rr_console_warp-03.js => devtools/client/webreplay/mochitest/browser_rr_object_preview-01.js
extra : source : ece44b8f51e43f9dcb56a592cb4e5205f8ce19e6
2019-09-16 22:48:15 +00:00
Mihai Alexandru Michis
f9580519b8 Backed out changeset e859a5aebb5b (bug 1534455) for causing failures at test_bug437844.xul
--HG--
rename : toolkit/content/widgets/autocomplete-input.js => toolkit/content/widgets/autocomplete.xml
2019-09-17 07:51:36 +03:00
J.C. Jones
8cc2abfd2a Bug 1573245 - Change AuthenticatorTransport to be string, not enum r=bzbarsky,keeler
Upstream: https://github.com/w3c/webauthn/issues/1268

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

--HG--
extra : moz-landing-system : lando
2019-09-17 04:47:27 +00:00
Maxime Vaillancourt
f6ab7d35e3 Bug 1574054 - Fix arrow keys behavior on tabs when document direction is RTL. r=rcaliman
Fix arrow keys behavior on tabs when document direction is RTL

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

--HG--
extra : moz-landing-system : lando
2019-09-16 19:46:41 +00:00
Mihai Alexandru Michis
4174e65ff5 Backed out changeset ece44b8f51e4 (bug 1581418) for causing xpcshell failures.
--HG--
rename : devtools/client/webreplay/mochitest/browser_rr_object_preview-01.js => devtools/client/webreplay/mochitest/browser_dbg_rr_console_warp-03.js
2019-09-17 06:17:05 +03:00
Masayuki Nakano
0549668bb1 Bug 1574852 - part 110: Split HTMLEditor::WillInsert() r=m_kato
It does 4 different things so that it looks like a black-box from the
callers.

First, only `HTMLEditRules::WillDoAction()` refers `aCancel` out argument.
Therefore, it should check whether it's cancelled or not directly.

Next, `EnsureNoPaddingBRElementForEmptyEditor()` should be called by each
caller directly.

Then, the renaming part can be split to 2 methods.  One is adjusting
caret position and the other preparing inline style for new content.


Unfortunately, this patch makes each caller messy.  I think that for the
3rd job (i.e., adjusting caret position), each caller should retrieve the
adjusted caret position and use it directly instead of handling with
`Selection` in the future.

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

--HG--
extra : moz-landing-system : lando
2019-09-17 02:21:53 +00:00
Masayuki Nakano
0da92b7d7d Bug 1574852 - part 109: Move TextEditRules::WillSetText() to TextEditor r=m_kato
And also renaming `EditorBase::SetTextImpl()`.

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

--HG--
extra : moz-landing-system : lando
2019-09-17 02:21:35 +00:00
Tim Nguyen
5d8a3da397 Bug 1534455 - Convert autocomplete binding to a customized input element. r=dao,bgrins
Differential Revision: https://phabricator.services.mozilla.com/D33250

--HG--
rename : toolkit/content/widgets/autocomplete.xml => toolkit/content/widgets/autocomplete-input.js
extra : moz-landing-system : lando
2019-09-17 01:35:25 +00:00
Mihai Alexandru Michis
2c2409c49e Backed out changeset 67e5d2425c75 (bug 1565316) for causing raptor wasm failures. CLOSED TREE 2019-09-17 04:49:42 +03:00
stephendonner
21b23f7c9d Bug 1581607: Add 'mozilla-beta' branch to talos-perf-reftest's defaults. r=heycam
Differential Revision: https://phabricator.services.mozilla.com/D46056

--HG--
extra : moz-landing-system : lando
2019-09-16 23:40:58 +00:00
Ting-Yu Lin
604bb5b99b Bug 1575964 Part 3 - Add new reftests for RTL columns, and run them with column-span enabled. r=dholbert
Delete `td {width: 25%}` and prefixed multi-column properties in
column-box-alignment-rtl.html because they are not needed.

rtl2.html is rtl.html plus `inline-size: 600px` on the column container.

rtl3.html is rtl.html plus `html { writing-mode: vertical-rl; }`.
Similarly, rtl4.html is rtl2.html plus
`html { writing-mode: vertical-rl; }`.

Note: in rtl2-ref.html and re4-ref.html, I added
`box-sizing: content-box` to `table` because `table` defaults to
`box-sizing: border-box`.

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

--HG--
rename : layout/reftests/columns/column-box-alignment-rtl-ref.html => layout/reftests/columns/column-box-alignment-rtl-2-ref.html
rename : layout/reftests/columns/column-box-alignment-rtl.html => layout/reftests/columns/column-box-alignment-rtl-2.html
rename : layout/reftests/columns/column-box-alignment-rtl.html => layout/reftests/columns/column-box-alignment-rtl-3.html
rename : layout/reftests/columns/column-box-alignment-rtl.html => layout/reftests/columns/column-box-alignment-rtl-4.html
extra : moz-landing-system : lando
2019-09-16 22:45:18 +00:00
Ting-Yu Lin
4c19765137 Bug 1575964 Part 2 - Fix RTL column positions when column-span is enabled. r=dbaron
Since column-contents' positions are moved, we need to fix ColumnSet's
overflow areas as well.

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

--HG--
extra : moz-landing-system : lando
2019-09-17 01:12:30 +00:00
Ting-Yu Lin
a9b1812a76 Bug 1575964 Part 1 - Separate a fixup logic which is redundant if column-span is enabled. r=dbaron
Differential Revision: https://phabricator.services.mozilla.com/D44278

--HG--
extra : moz-landing-system : lando
2019-09-16 18:45:34 +00:00
Thomas Wisniewski
547077eb9b Bug 1564594 - re-sync browser/ and mobile/ versions of the addon to correct a telemetryKey typo, remove the now unusued regex-matching code, and bump version to 6.0.3; r=miketaylr
re-sync browser/ and mobile/ versions of the addon to correct a telemetryKey typo, remove the now unusued regex-matching code, and bump version to 6.0.3

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

--HG--
extra : moz-landing-system : lando
2019-09-15 07:21:25 +00:00
Mats Palmgren
9f0578ffbf Bug 1580346 - Initialize table-row and table-row-group borders to zero in border-collapse:separate tables. r=bzbarsky
Differential Revision: https://phabricator.services.mozilla.com/D45940

--HG--
extra : moz-landing-system : lando
2019-09-16 22:07:03 +00:00
Botond Ballo
3b9cddf6d8 Bug 1578777 - Use UsesSVGEffectsNotSupportedInCompositor() in ShouldBuildScrollInfoItemsForHoisting(). r=tnikkel
This required replacing nsDisplayListBuilder::mSVGEffectsBuildingDepth with
a stack of the SVG effects frames that we're currently building inside.

Depends on D46063

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

--HG--
extra : moz-landing-system : lando
2019-09-17 00:06:30 +00:00
Botond Ballo
439820f334 Bug 1578777 - Move UsesSVGEffectsNotSupportedInCompositor() to nsSVGIntegrationUtils. r=tnikkel
Depends on D46061

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

--HG--
extra : moz-landing-system : lando
2019-09-17 00:06:28 +00:00
Botond Ballo
2f3236c03c Bug 1578777 - Use CanCreateWebRenderFiltersForFrame() in ScrollFrameWillBuildScrollInfoLayer(). r=tnikkel
Depends on D46060

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

--HG--
extra : moz-landing-system : lando
2019-09-17 00:05:02 +00:00
Botond Ballo
eb5a78b194 Bug 1578777 - Introduce a helper nsSVGIntegrationUtils::CanCreateWebRenderFiltersForFrame(). r=jrmuizel
Depends on D46059

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

--HG--
extra : moz-landing-system : lando
2019-09-16 21:54:38 +00:00
Botond Ballo
4375178c34 Bug 1578777 - Move CreateWebRenderCSSFilters() to nsSVGIntegrationUtils. r=jrmuizel
Depends on D46058

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

--HG--
extra : moz-landing-system : lando
2019-09-16 21:54:16 +00:00
Botond Ballo
ad9e06d1e5 Bug 1578777 - Remove the builder parameter from nsDisplayFilters::CreateWebRenderCommands(). r=jrmuizel
It was unused.

Depends on D46057

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

--HG--
extra : moz-landing-system : lando
2019-09-16 21:50:16 +00:00
Botond Ballo
48a06f502f Bug 1578777 - Remove non-ASCII character from comment in WebRenderCommandBuilder.cpp. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D46057

--HG--
extra : moz-landing-system : lando
2019-09-16 21:57:56 +00:00