Граф коммитов

716796 Коммитов

Автор SHA1 Сообщение Дата
Jean-Yves Avenard 9194155201 Bug 1649974 - P1. Make WeakPtr work with generic taskqueue. r=froydnj
It worked until now as IPC's MessageChannel was only used with background taskqueue; which use a threadpool made of a single thread only.

Differential Revision: https://phabricator.services.mozilla.com/D82499
2020-07-08 03:58:18 +00:00
Dão Gottwald 9a6c0a0bd5 Bug 1503678 - Respect prefers-reduced-motion when reordering items in customize mode. r=Gijs
Differential Revision: https://phabricator.services.mozilla.com/D82541
2020-07-07 23:17:56 +00:00
Jean-Yves Avenard 5bd9f01114 Bug 1650786 - Make ImageBridgeChild use a nsThread. r=KrisWright,mattwoodrow
This is a partial revert of bug 1647628.

The ImageBridgeChild's thread is used to dispatch synchronous tasks by its consumers.
While the background taskqueue is using a single thread threadpool, this would prevent many places to also use a background taskqueue that could end up calling the ImageBridgeChild.

Differential Revision: https://phabricator.services.mozilla.com/D82395
2020-07-08 06:32:19 +00:00
Simon Giesecke 074fc942dd Bug 1644780 - Removed diagnostic assertion when db::IncrementalVacuum fails. r=dom-workers-and-storage-reviewers,janv
Differential Revision: https://phabricator.services.mozilla.com/D82551
2020-07-07 16:05:29 +00:00
Simon Giesecke 880c2f04e1 Bug 1650765 - Perform optimization for strings encoded as single-bytes only. r=dom-workers-and-storage-reviewers,janv
Differential Revision: https://phabricator.services.mozilla.com/D82355
2020-07-07 14:06:00 +00:00
Simon Giesecke 8156f04bd4 Bug 1650765 - Iterate over raw ranges in EncodeAsString. r=dom-workers-and-storage-reviewers,janv
Differential Revision: https://phabricator.services.mozilla.com/D82354
2020-07-07 12:18:25 +00:00
Bogdan Tara 85ae3b911d Backed out changeset 3a38af2b7e83 (bug 1651186) for browser_password_management.js failures CLOSED TREE 2020-07-08 08:50:10 +03:00
Ting-Yu Lin 1ae545bdca Bug 1651202 Part 5 - Remove mState field from frame tree output. r=heycam
Per discussion on matrix, printing mState in hex format is
indecipherable. Remove it to reduce the rate of wrapping of a long line.

Differential Revision: https://phabricator.services.mozilla.com/D82606
2020-07-08 01:03:56 +00:00
Ting-Yu Lin 16b7f80e1e Bug 1651202 Part 4 - Remove DebugListFrameTree in nsIFrame.cpp. r=heycam
This is equivalent to `aFrame->DumpFrameTreeLimited()` or `ftl` gdb /
lldb command. It appears only in nsIFrame.cpp, I doubt it's actually
used by developers.

Differential Revision: https://phabricator.services.mozilla.com/D82605
2020-07-08 01:03:33 +00:00
Ting-Yu Lin 8dd11ff135 Bug 1651202 Part 3 - Rewrite container frame's frame tree output. r=heycam
This affects the output of flex, grid, fieldset, etc.

Given a snippet like the following.

```
<fieldset style="position: relative; display: flex">
  <div style="position: absolute">
```

Currently, the frame tree output looks as if the AbsoluteList is under
the FieldSet, but it's actually under the FlexContainer.

```
FieldSet(fieldset)(8)@7f4ae9e73508 ... <
  FlexContainer(fieldset)(8)@7f4ae9e735c0 ... <
    Placeholder(div)(1)@7f4ae9e73738
  >
  AbsoluteList 7f4ae9dcb8c0 <
    Block(div)(1)@7f4ae9e73670 ... <
    >
  >
>
```

After this patch, the frame tree looks like:

```
FieldSet(fieldset)(8)@7f4ae9e73508 ... <
  FlexContainer(fieldset)(8)@7f4ae9e735c0 ... <
    Placeholder(div)(1)@7f4ae9e73738
    AbsoluteList 7f4ae9dcb8c0 <
      Block(div)(1)@7f4ae9e73670 ... <
      >
    >
  >
>
```

Another minor difference is that for a empty container, the end angle
bracket is now on its own line, which is consistent with an empty block
frame's output.

This old output

```
FlexContainer(div)(4)@7f4ae9e73390<>
```

becomes

```
FlexContainer(div)(4)@7f4ae9e73390<
>
```

Differential Revision: https://phabricator.services.mozilla.com/D82604
2020-07-08 05:39:57 +00:00
Ting-Yu Lin 4ecda7f556 Bug 1651202 Part 2 - Minor format tweaks for block frame's frame tree output. r=heycam
Make the following tweak so that they are consistent with others.

* Add a space before the open angle bracket. This is at the end of
`Block(div)(1)@7f10e25de5d0 ... <`

* Tweak nsLineBox format.
`line 7f10e25de808: count=1` becomes `line@7f10e25de808 count=1`.

* Tweak child list format.
`AbsoluteList 0x7f10e3c7e560` becomes `AbsoluteList@7f10e3c7e560`

Differential Revision: https://phabricator.services.mozilla.com/D82603
2020-07-08 05:37:39 +00:00
Ting-Yu Lin 358c2f9ef1 Bug 1651202 Part 1 - Extract nsBlockFrame's printing child lists logic to a helper methods. r=heycam
`ListChildLists` lives in nsContainerFrame because I'm going to use it
to improve nsContainerFrame::List() in a later patch.

Differential Revision: https://phabricator.services.mozilla.com/D82602
2020-07-08 00:59:02 +00:00
Cosmin Sabou d84db7a42c Backed out 2 changesets (bug 1633913) for turning bug 1648918 into permafail.
Backed out changeset 034094223ab6 (bug 1633913)
Backed out changeset 9b4ac167f5fa (bug 1633913)
2020-07-08 08:05:23 +03:00
Severin 8deb84e6ca Bug 1641415 - show values from page inputs in username field of password manager doorhanger;r=MattN
Differential Revision: https://phabricator.services.mozilla.com/D80673
2020-07-08 04:46:11 +00:00
Narcis Beleuzu c97aefe71a Backed out changeset 4a732e51e604 (bug 1604807) for xpcshell failure on test_autofillFormFields.js 2020-07-08 07:55:48 +03:00
Narcis Beleuzu 0515bebd4d Backed out changeset e1841978b15a (bug 1193437) for bustages on ice_unittest.cpp 2020-07-08 07:52:53 +03:00
Mike Hommey 1c697d5065 Bug 1651263 - Avoid spending > 2 minutes compiling Preferences.cpp r=njn
Not inlining AddMirror brings compilation time of this file, on my
machine, from 2:14 to 13.5s.

Differential Revision: https://phabricator.services.mozilla.com/D82633
2020-07-08 04:16:26 +00:00
Daniel Holbert 9542b75d5b Bug 1492538 part 2: Cache flex items' content-box sizes after reflowing them, & skip subsequent reflow if the size matches and the item's subtree isn't dirty. r=TYLin
Note: This optimization saves us from doing an extra unnecessary reflow in the
mochitest test_bug1505254.html, so I'm adjusting that test to remove its
magical "+1" fudge-factor in its expectations (and the corresponding
explanatory comment).  Similarly, I'm dropping the assertion-count for
crashtest 1488762-1.html because we now do a little bit less reflow work (and
hence assert a little bit less) in that test.

Depends on D78821

Differential Revision: https://phabricator.services.mozilla.com/D78822
2020-07-08 04:12:55 +00:00
Daniel Holbert 1f4f582846 Bug 1492538 part 1: Remove unnecessary special-casing on constrained-BSize check in FlexItem::NeedsFinalReflow. r=TYLin
Note: this patch doesn't change behavior of current mozilla-central - it's just reordering some logic, basically.

Background/explanation: in current mozilla-central, we intentionally force a
"final reflow" for flex items (i.e. we return true from NeedsFinalReflow) if we
see that there's a constrained AvailableBSize (i.e. if we're fragmenting).  However, the
logic to do that is buried within a basically-unrelated "if
(HadMeasuringReflow())" special case.

This patch pulls that check out of this unrelated special-case, so that we
detect the constrained AvailableBSize earlier and return earlier (indicating
more eagerly/up-front that we need a final reflow).

This patch is necessary because a later patch in this queue will add additional
special cases to FlexItem::NeedsFinalReflow, which will aim to make us *skip*
the final reflow in more cases.  But for now, we want this
contrained-AvailableBSize check to "dominate" and eagerly force a reflow,
regardless of that soon-to-be-added logic.

Differential Revision: https://phabricator.services.mozilla.com/D78821
2020-07-07 21:58:44 +00:00
Matthew Noorenberghe dc93b157f4 Bug 1651186 - Use getLoginOrigin to remove the path from file: URIs for pwmgr. r=severin
Differential Revision: https://phabricator.services.mozilla.com/D82593
2020-07-07 21:14:27 +00:00
Adam Roach [:abr] ffd0f638b7 Bug 1604807: Set text field values through formFillController to avoid races r=zbraniecki
Differential Revision: https://phabricator.services.mozilla.com/D82637
2020-07-08 03:16:38 +00:00
Jeff Muizelaar f2b7a41716 Bug 1650475. Enable GPU switching on Mac. r=kvark
The goal here is to make it so that we don't special case the device on Mac
so that we can switch GPUs without needing to reset any state.

There a couple of parts to this:
1. Disable texture storage so that we can use BGRA textures and don't need swizzling.
2. Use the recommended GL_UNSIGNED_INT_8_8_8_8_REV for BGRA on desktop GL.
3. Disable swizzling.
4. Always do the PBO workaround.

Differential Revision: https://phabricator.services.mozilla.com/D82223
2020-07-08 01:56:55 +00:00
Doug Thayer 13300d3228 Bug 1627075 - Include WebGLParent.h in WebGLChild.h r=handyman,jgilbert
Depends on D77634

Differential Revision: https://phabricator.services.mozilla.com/D79536
2020-07-08 02:46:46 +00:00
Doug Thayer b274aafa4b Bug 1627075 - Route Omnijar requests through StartupCache r=froydnj
This should be a relatively straightforward patch. Essentially, we implement
a wrapper class (and friends) around nsZipArchive (and friends), which transparently
caches entries from the underlying zip archive in the StartupCache. This will break
without changes to the StartupCache, made in the patch after this, which allow it
to be used off of the main thread, and outside the main process.

Depends on D77635

Differential Revision: https://phabricator.services.mozilla.com/D77634
2020-07-08 02:46:34 +00:00
Doug Thayer fcbcc674d2 Bug 1627075 - OMT and OMP StartupCache access r=froydnj
The overall goal of this patch is to make the StartupCache accessible anywhere.
There's two main pieces to that equation:

1. Allowing it to be accessed off main thread, which means modifying the
   mutex usage to ensure that all data accessed from non-main threads is
   protected.
2. Allowing it to be accessed out of the chrome process, which means passing
   a handle to a shared cache buffer down to child processes.

Number 1 is somewhat fiddly, but it's all generally straightforward work. I'll
hope that the comments and the code are sufficient to explain what's going on
there.

Number 2 has some decisions to be made:
- The first decision was to pass a handle to a frozen chunk of memory down to
  all child processes, rather than passing a handle to an actual file. There's
  two reasons for this: 1) since we want to compress the underlying file on
  disk, giving that file to child processes would mean they have to decompress
  it themselves, eating CPU time. 2) since they would have to decompress it
  themselves, they would have to allocate the memory for the decompressed
  buffers, meaning they cannot all simply share one big decompressed buffer.

  - The drawback of this decision is that we have to load and decompress the
    buffer up front, before we spawn any child processes. We attempt to
    mitigate this by keeping track of all the entries that child processes
    access, and only including those in the frozen decompressed shared buffer.

  - We base our implementation of this approach off of the shared preferences
    implementation. Hopefully I got all of the pieces to fit together
    correctly. They seem to work in local testing and on try, but I think
    they require a set of experienced eyes looking carefully at them.

- Another decision was whether to send the handles to the buffers over IPC or
  via command line. We went with the command line approach, because the startup
  cache would need to be accessed very early on in order to ensure we do not
  read from any omnijars, and we could not make that work via IPC.

  - Unfortunately this means adding another hard-coded FD, similar to
    kPrefMapFileDescriptor. It seems like at the very least we need to rope all
    of these together into one place, but I think that should be filed as a
    follow-up?

Lastly, because this patch is a bit of a monster to review - first, thank you
for looking at it, and second, the reason we're invested in this is because we
saw a >10% improvement in cold startup times on reference hardware, with a p
value less than 0.01. It's still not abundantly clear how reference hardware
numbers translate to numbers on release, and they certainly don't translate
well to Nightly numbers, but it's enough to convince me that it's worth some
effort.

Depends on D78584

Differential Revision: https://phabricator.services.mozilla.com/D77635
2020-07-08 02:46:11 +00:00
Doug Thayer 3a305bb054 Bug 1627075 - Allow lazily initializing nsZipArchives r=froydnj
Opening our Omnijars can be expensive, and it should be deferrable until after
startup is completed, provided we have a startup cache. In a previous patch in this
stack, we implemented caching of the zip central directory for omnijars, but we
still have to open the file in order to hand the object off to various omnijar
consumers. In a later patch, we will wrap nsZipArchive access in a class which
will allow us to transparently cache nsZipArchive results. These two get us
most of the way to not needing to read from the underlying omnijar files during
startup, but there are still nontrivial pieces, like nsZipFind for instance,
which we don't want to just duplicate inside of a wrapper class, so we would
like to sort out a way in which we can use an nsZipArchive class, but not
actually back it up with the real underlying file until we really need data
from it which we can't find in a cache.

Depends on D77633

Differential Revision: https://phabricator.services.mozilla.com/D78584
2020-07-08 02:44:13 +00:00
Doug Thayer 00ed10f38d Bug 1627075 - Init StartupCache before Omnijar r=froydnj
We need to be able to init StartupCache before the Omnijar in order to cache
all of the Omnijar contents we access. This patch implements that.

Depends on D77632

Differential Revision: https://phabricator.services.mozilla.com/D77633
2020-07-08 02:43:30 +00:00
Doug Thayer d9fd460e11 Bug 1627075 - Build Omnijar file list from startup cache r=froydnj
We would like to be able to defer opening the omnijar files until after startup
if the StartupCache has already been populated. Opening the omnijar files takes
a nontrivial time, at least on Windows, and almost everything in the omnijar
should be fairly compressible, and thus makes sense to live in the StartupCache.
See the last patch in this series for a little more discussion on numbers, but
tl;dr: we saw a 12% improvement in time to about:home being finished on reference
hardware with these changes together with the changes from the descendant patches.

Differential Revision: https://phabricator.services.mozilla.com/D77632
2020-07-08 02:43:02 +00:00
Junior Hsu da7ef4914b Bug 1645901 - handle cookie setting in child process for Set-Cookie response, r=baku,mayhemer,necko-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D82130
2020-07-07 15:19:09 +00:00
Toshihito Kikuchi 99149df7fc Bug 1650419 - Backport the tail merge fix to our version of Clang 9.0.1. r=dmajor
This patch applies the fix for https://bugs.llvm.org/show_bug.cgi?id=45858 to
our version of Clang so that we can update Chromium sandbox code (bug 1639030).

Differential Revision: https://phabricator.services.mozilla.com/D82589
2020-07-07 22:03:46 +00:00
Masayuki Nakano c28c0b9359 Bug 1647556 - part 4: Rewrite `WSRunObject::Scrub()` r=m_kato
`Scrub()` does remove leading white-spaces and trailing white-spaces if
there is.  So, it does not require `WSFragment` anymore.

Differential Revision: https://phabricator.services.mozilla.com/D82275
2020-07-07 16:21:50 +00:00
Kris Maglione 5837ad4bdd Bug 1580764: Part 3 - Remove unused AncestorOuterWindowIDs from LoadInfo. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D82465
2020-07-07 21:14:34 +00:00
Kris Maglione bd94db4e9a Bug 1580764: Part 2 - Use BrowsingContext IDs rather than window IDs to compute frame IDs. r=zombie
Differential Revision: https://phabricator.services.mozilla.com/D82464
2020-07-07 21:37:53 +00:00
Kris Maglione 01ca404c30 Bug 1580764: Part 1 - Add ancestor BrowsingContext IDs to LoadInfo. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D82463
2020-07-07 21:14:42 +00:00
Logan Smyth 8ae3774a1c Bug 780269 - Pass (X-)SourceMap header to SpiderMonkey for workers. r=perry
Differential Revision: https://phabricator.services.mozilla.com/D70293
2020-07-07 21:19:58 +00:00
Narcis Beleuzu 8359f16846 Backed out 7 changesets (bug 1650163, bug 1649477) for bustages on JSActor.cpp . CLOSED TREE
Backed out changeset 4a21afb65254 (bug 1650163)
Backed out changeset c41753a56f5a (bug 1650163)
Backed out changeset 5fb444c35764 (bug 1650163)
Backed out changeset 830aa93d2b0c (bug 1649477)
Backed out changeset eca6e9dce450 (bug 1649477)
Backed out changeset 5b217aa88289 (bug 1649477)
Backed out changeset 8959d02b840f (bug 1649477)
2020-07-08 04:09:27 +03:00
Shane Caraveo 198535840e Bug 1644322 remove discovery.amo as valid host in mozAddonManager r=aswan
Differential Revision: https://phabricator.services.mozilla.com/D82053
2020-07-02 16:55:47 +00:00
Jeff Muizelaar 4031f2396c Bug 1650801 - Panic instead of failing gracefully if FreeType failed to initialize. r=gw
Bug 1650662 makes us RELEASE_ASSERT on FreeType initialization earlier
so I think it's unlikely that we ever hit this case in the future.

Differential Revision: https://phabricator.services.mozilla.com/D82390
2020-07-07 23:35:48 +00:00
Mike Conley 18cfe83515 Bug 1633913 - Add a test to make sure no new Activity Stream actions get added to the startup window without the isStartup meta property. r=Mardak
This also updates the head.js for the about:home startup cache tests to make
sure that Pocket stories exist during the test.

Differential Revision: https://phabricator.services.mozilla.com/D80999
2020-07-07 23:07:12 +00:00
Mike Conley 26e47e4baf Bug 1633913 - Annotate ActivityStream actions that occur during startup, and have the cached about:home document ignore them. r=Mardak
Differential Revision: https://phabricator.services.mozilla.com/D80998
2020-07-07 23:07:00 +00:00
Junior Hsu 9b0685fe4c Bug 1646592 - P4 Remove the depedency between OnStartRequestSent and AttachStreamFilter, r=mayhemer,necko-reviewers
We're shorter the name!

Depends on D81274

Differential Revision: https://phabricator.services.mozilla.com/D81275
2020-07-07 21:46:34 +00:00
Junior Hsu 069f0d6456 Bug 1646592 - P3 Sending endpoint of stream filter via PHttpBackgroundChannel, r=mayhemer,necko-reviewers
Endpoint would be passed by a series of std::move via
nsHttpChannel -> HttpChannelParent -> HttpBackgroundChannelParent ---> HttpBackgroundChannelChild -> HttpChannelChild
												|
												|
   Resolve promise after successfully send IPC<-/

Depends on D81273

Differential Revision: https://phabricator.services.mozilla.com/D81274
2020-07-07 21:46:01 +00:00
Junior Hsu cea21a8121 Bug 1646592 - P2 remove NeckoTargetChannelEvent which could not be specialized for HttpChannelChild, r=mayhemer,necko-reviewers
NeckoTargetChannelEvent uses a protected member function, which couldn't compile with instantiation of HttpChannelChild
https://searchfox.org/mozilla-central/rev/cfaa250d14e344834932de4c2eed0061701654da/netwerk/ipc/ChannelEventQueue.h#64

Depends on D81272

Differential Revision: https://phabricator.services.mozilla.com/D81273
2020-07-07 21:45:08 +00:00
Junior Hsu 257fe0c281 Bug 1646592 - P1 Use nsISerialEventTarget for HttpBackgroundChannelParent, r=valentin,necko-reviewers
Like bug 1647133, we need this to be nsISerialEventTarget for the InvokeAsync

Differential Revision: https://phabricator.services.mozilla.com/D81272
2020-07-07 21:44:50 +00:00
Tom Schuster 7ba7c125fe Bug 1650776 - Introduce Debugger.Object.isError to check for error objects. r=tcampbell
Differential Revision: https://phabricator.services.mozilla.com/D82454
2020-07-06 21:04:33 +00:00
Nika Layzell 7a7a796fc2 Bug 1650163 - Part 3: Move REMOTE_TYPE defines to a separate header, r=farre
Differential Revision: https://phabricator.services.mozilla.com/D82107
2020-07-06 20:28:01 +00:00
Nika Layzell a3b4b6cba4 Bug 1650163 - Part 2: Add a NOT_REMOTE_TYPE define to clarify calling code, r=farre
Differential Revision: https://phabricator.services.mozilla.com/D82106
2020-07-06 20:27:59 +00:00
Nika Layzell df351180c3 Bug 1650163 - Part 1: Switch native remoteType values to nsCString, r=farre
Differential Revision: https://phabricator.services.mozilla.com/D82104
2020-07-06 20:30:58 +00:00
Nika Layzell 82eef07986 Bug 1640427 - Don't perform flaky process launch check during test, r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D82108
2020-07-07 22:25:25 +00:00
Scott bea2192307 Bug 1644891 - Client side mechanism to read spoc v2 server response. r=gvn
Differential Revision: https://phabricator.services.mozilla.com/D82610
2020-07-07 22:15:33 +00:00