Commit Graph

195 Commits

Author SHA1 Message Date
Valentin Gosu
ac252b8172 Bug 1694662 - Remove appcache logic from content sink r=necko-reviewers,dragana
Differential Revision: https://phabricator.services.mozilla.com/D106440
2021-04-30 07:20:18 +00:00
Gerald Squelart
f25e1c0093 Bug 1691589 - Reduce reliance on GeckoProfiler.h when only labels (and maybe markers) are needed - r=necko-reviewers,geckoview-reviewers,sg,agi,florian
There are no code changes, only #include changes.
It was a fairly mechanical process: Search for all "AUTO_PROFILER_LABEL", and in each file, if only labels are used, convert "GeckoProfiler.h" into "ProfilerLabels.h" (or just add that last one where needed).
In some files, there were also some marker calls but no other profiler-related calls, in these cases "GeckoProfiler.h" was replaced with both "ProfilerLabels.h" and "ProfilerMarkers.h", which still helps in reducing the use of the all-encompassing "GeckoProfiler.h".

Differential Revision: https://phabricator.services.mozilla.com/D104588
2021-02-16 04:44:19 +00:00
Emilio Cobos Álvarez
63d85cceeb Bug 1637651 - Don't skip over empty value in link header parsing. r=smaug
With crossorigin, empty value and no value are two different things, so
the link header parser needs to handle it.

Without this change the updated test would fail with two entries rather
than one getting returned from:

  numberOfResourceTimingEntries("resources/dummy.css?link-header-crossorigin-preload2")

Differential Revision: https://phabricator.services.mozilla.com/D103570
2021-02-01 23:23:42 +00:00
Emilio Cobos Álvarez
6b3c4265a2 Bug 1688925 - Move nsHTMLDNSPrefetch to the mozilla::dom namespace. r=smaug,edgar
Differential Revision: https://phabricator.services.mozilla.com/D103060
2021-01-27 04:37:58 +00:00
Emilio Cobos Álvarez
95b89229c7 Bug 1687587 - Cleanup a bit the nsHTMLDNSPrefetch code. r=smaug
Introduce a Priority parameter that we use rather than duplicating functions.

Depends on D102366

Differential Revision: https://phabricator.services.mozilla.com/D102367
2021-01-20 09:34:27 +00:00
Emilio Cobos Álvarez
2b54be07bd Bug 1685830 - Remove spurious check that prevents preload from working in non-http(s) sites. r=smaug
As it doesn't match other implementations, and it's confusing.

Differential Revision: https://phabricator.services.mozilla.com/D101248
2021-01-11 02:37:15 +00:00
Emilio Cobos Álvarez
77afb7d93f Bug 1685816 - Don't fire rel=preload error events for invalid type/media/as attributes. r=smaug
This matches other browsers, https://github.com/w3c/preload/issues/155
is the spec issue. There was a test for invalid as values.

Differential Revision: https://phabricator.services.mozilla.com/D101243
2021-01-10 20:50:02 +00:00
Simon Giesecke
ab6f0a7137 Bug 1650145 - Replace all value uses of Empty[C]String by 0-length _ns literals. r=froydnj,geckoview-reviewers,agi
Differential Revision: https://phabricator.services.mozilla.com/D82325
2020-09-23 15:17:15 +00:00
Sean Feng
db7b49b387 Bug 1653474 - Process META elements when it's inserted r=smaug
Unlike other engine vendors, we process meta elements
at parser, instead of when they are inserted. This
leads some web compact issues.

This patch aligns us with other vendors.

Differential Revision: https://phabricator.services.mozilla.com/D84545
2020-08-05 16:32:57 +00:00
Cameron McCormack
d0ed3186eb Bug 1650409 - Null check preload URL parsing. r=mayhemer
Differential Revision: https://phabricator.services.mozilla.com/D84035
2020-07-18 13:54:22 +00:00
Simon Giesecke
a69d79b6db Bug 1648010 - Replace uses of NS_LITERAL_STRING/NS_LITERAL_CSTRING macros by _ns literals. r=geckoview-reviewers,jgilbert,agi,hsivonen,froydnj
Differential Revision: https://phabricator.services.mozilla.com/D80860
2020-07-01 08:29:29 +00:00
Emilio Cobos Álvarez
403dd23c86 Bug 1646776 - Make sure to fire load rather than error events for preload links that hit the CSS cache. r=mayhemer
When we hit the stylesheet cache for an existing stylesheet in a
different document:

 * There's no existing preload in the PreloadService (because the sheet
   was loaded in another document).

 * We don't create a PreloaderBase (because we don't trigger a load at
   all).

 * And thus we believe the load has just errored, which is wrong...

Fix it by properly passing through the "already complete" status from
PreloadStyle.

Note that there's still another issue, which is that we'd still hit this
broken path if two stylesheets with the same URI are loading in
different documents and the CSS loader coalesces them.

For that, I think we'd have to make SheetLoadData the thing that
actually implements PreloaderBase. This is kind of an obscure case, and
SheetLoadData has a pretty complex lifetime already (keeps alive a whole
lot of stuff), so I'd prefer to do this in a separate bug.

Differential Revision: https://phabricator.services.mozilla.com/D80289
2020-06-22 14:18:19 +00:00
Emilio Cobos Álvarez
8688ceb28a Bug 1639392 - Merge nsIStyleSheetLinkingElement and nsStyleLinkElement, and call it LinkStyle. r=jwatt
Which is the spec term. nsIStyleSheetLinkingElement is even more
confusing since it may not be an element at all (see: processing
instructions).

Differential Revision: https://phabricator.services.mozilla.com/D76071
2020-05-21 03:07:16 +00:00
Andrea Marchesini
fd562343ac Bug 1639247 - Isolate DNS cache per first-party when privacy.partition.network_state is set to true - part 3 - implementation, r=valentin,necko-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D75985
2020-05-20 17:27:43 +00:00
Razvan Maries
8bf44f2fc9 Backed out 3 changesets (bug 1639247) for build bustages on on StoragePrincipalHelper.cpp. CLOSED TREE
Backed out changeset 48a854ee6710 (bug 1639247)
Backed out changeset 032d302608e4 (bug 1639247)
Backed out changeset 2d2ff22a0ea4 (bug 1639247)
2020-05-20 19:34:22 +03:00
Andrea Marchesini
21db04c7dc Bug 1639247 - Isolate DNS cache per first-party when privacy.partition.network_state is set to true - part 2 - implementation, r=valentin,necko-reviewers
Differential Revision: https://phabricator.services.mozilla.com/D75985
2020-05-20 15:25:35 +00:00
Honza Bambas
5562c9cc87 Bug 1618548 - Make Link: rel=preload response header work with preload-as-speculative-load, r=dragana
Differential Revision: https://phabricator.services.mozilla.com/D75133
2020-05-18 17:33:57 +00:00
Emilio Cobos Álvarez
9a8c41776d Bug 1635094 - Cleanup the ReferrerInfo code. r=ckerschb
The cast in InitWithNode is wrong. AsElement() asserts instead of
checking the flag, so we always pass an element (and if we didn't we'd
have type confusion problems). I audited the callers and we're fine.

Anyhow, always require an element, and add two convenience constructors
for C++ code.

Differential Revision: https://phabricator.services.mozilla.com/D73636
2020-05-04 18:50:20 +00:00
Cosmin Sabou
00d059a4c0 Backed out 2 changesets (bug 1635094) for build bustages on nsMacShellService.cpp. CLOSED TREE
Backed out changeset 0a2b0c6ea19a (bug 1635094)
Backed out changeset ead4f26f76ee (bug 1635094)
2020-05-04 20:04:06 +03:00
Emilio Cobos Álvarez
41fba10f7f Bug 1635094 - Cleanup the ReferrerInfo code. r=ckerschb
The cast in InitWithNode is wrong. AsElement() asserts instead of
checking the flag, so we always pass an element (and if we didn't we'd
have type confusion problems). I audited the callers and we're fine.

Anyhow, always require an element, and add two convenience constructors
for C++ code.

Differential Revision: https://phabricator.services.mozilla.com/D73636
2020-05-04 16:26:51 +00:00
Emilio Cobos Álvarez
9358c0ec41 Bug 1623968 - Show a warning when a page forces the start of layout, as that usually indicates a FOUC. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D67669
2020-03-21 12:18:28 +00:00
Emilio Cobos Álvarez
ea4bd78717 Bug 1622235 - Make defer scripts wait for stylesheets. r=hsivonen
Rename ScriptLoader::mDocumentParsingDone to
ScriptLoader::mDeferCheckpointReached, and make it also get unblocked by
stylesheet loading.

Remove a useless null-check for mDocument as we unconditionally dereference it
below when checking mDocument->HaveFiredDOMTitleChange()

Differential Revision: https://phabricator.services.mozilla.com/D67611
2020-03-20 13:33:11 +00:00
Ehsan Akhgari
16a9d7996f Bug 1620322 - Part 9: Move ContentBlockingLog to antitracking to keep all related code together in the same place; r=baku
Differential Revision: https://phabricator.services.mozilla.com/D65822
2020-03-09 23:36:39 +00:00
Kris Maglione
232ff37e9f Bug 1535617: Part 2 - Clear weak references for most cycle collected objects on unlink. r=mccr8
This covers most cycle collected objects which support weak references, but
not the ones which inherit from a cycle collected class and don't do any cycle
collection on their own.

Differential Revision: https://phabricator.services.mozilla.com/D63962
2020-02-25 19:44:39 +00:00
Simon Giesecke
9bcfd47601 Bug 1611415 - Prefer using std::move over forget. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D60980
2020-02-13 14:38:48 +00:00
shindli
6bb3487209 Backed out changeset 0c982bc69cb3 (bug 1611415) for causing build bustages in /builds/worker/workspace/build/src/obj-firefox/dist/include/nsCOMPtr CLOSED TREE 2020-02-12 20:13:29 +02:00
Simon Giesecke
d45525793f Bug 1611415 - Applied FixItHints from mozilla-non-std-move. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D60980
2020-02-12 17:24:41 +00:00
Jonathan Kingston
6272e1d2e2 Bug 1605814 - Don't capture CSP nonce when loading a child sheet. r=emilio,ckerschb
Differential Revision: https://phabricator.services.mozilla.com/D58686
2020-01-13 11:47:25 +00:00
Valentin Gosu
ed7ed3d5a4 Bug 1552176 - pass TRRMode into nsHTMLDNSPrefetch methods r=dragana
Differential Revision: https://phabricator.services.mozilla.com/D49159
2020-01-07 19:33:51 +00:00
Jonathan Kingston
590fb3fb2e Bug 1602462 - Remove http-equiv meta cookie code. r=baku
Differential Revision: https://phabricator.services.mozilla.com/D57442
2019-12-17 13:49:37 +00:00
Boris Zbarsky
fcb04b87e4 Bug 1602090 part 2. Create separate CheckMayLoad and CheckMayLoadWithReporting APIs. r=ckerschb
CheckMayLoadAndReport takes a window ID.  This allows us to report
errors from it to the web console as needed.  Most consumers know statically
whether they want reporting or not, so there's no reason to force the ones that
don't to provide window ids.

Differential Revision: https://phabricator.services.mozilla.com/D56388
2019-12-13 06:24:12 +00:00
Ciure Andrei
2e0157c747 Backed out 4 changesets (bug 1602483, bug 1602090) for causing perma leackchecks CLOSED TREE
Backed out changeset 6b057ba06b4a (bug 1602483)
Backed out changeset 9be3269d781d (bug 1602483)
Backed out changeset e3e2c1d7478e (bug 1602090)
Backed out changeset fdc4a588912e (bug 1602090)
2019-12-12 18:37:01 +02:00
Boris Zbarsky
d9b66ffabd Bug 1602090 part 2. Create separate CheckMayLoad and CheckMayLoadWithReporting APIs. r=ckerschb
CheckMayLoadAndReport takes a window ID.  This allows us to report
errors from it to the web console as needed.  Most consumers know statically
whether they want reporting or not, so there's no reason to force the ones that
don't to provide window ids.

Differential Revision: https://phabricator.services.mozilla.com/D56388
2019-12-12 13:03:42 +00:00
Gabriele Svelto
eb403b8785 Bug 1600545 - Remove useless inclusions of header files generated from IDL files in dom/ r=Ehsan
The inclusions were removed with the following very crude script and the
resulting breakage was fixed up by hand. The manual fixups did either
revert the changes done by the script, replace a generic header with a more
specific one or replace a header with a forward declaration.

find . -name "*.idl" | grep -v web-platform | grep -v third_party | while read path; do
    interfaces=$(grep "^\(class\|interface\).*:.*" "$path" | cut -d' ' -f2)
    if [ -n "$interfaces" ]; then
        if [[ "$interfaces" == *$'\n'* ]]; then
          regexp="\("
          for i in $interfaces; do regexp="$regexp$i\|"; done
          regexp="${regexp%%\\\|}\)"
        else
          regexp="$interfaces"
        fi
        interface=$(basename "$path")
        rg -l "#include.*${interface%%.idl}.h" . | while read path2; do
            hits=$(grep -v "#include.*${interface%%.idl}.h" "$path2" | grep -c "$regexp" )
            if [ $hits -eq 0 ]; then
                echo "Removing ${interface} from ${path2}"
                grep -v "#include.*${interface%%.idl}.h" "$path2" > "$path2".tmp
                mv -f "$path2".tmp "$path2"
            fi
        done
    fi
done

Differential Revision: https://phabricator.services.mozilla.com/D55442
2019-12-06 09:24:56 +00:00
Dorel Luca
67889e1013 Backed out changeset f6e53d1c6518 (bug 1600545) for Android build bustage. CLOSED TREE 2019-12-04 17:32:27 +02:00
Gabriele Svelto
dc6fa2e86c Bug 1600545 - Remove useless inclusions of header files generated from IDL files in dom/ r=Ehsan
The inclusions were removed with the following very crude script and the
resulting breakage was fixed up by hand. The manual fixups did either
revert the changes done by the script, replace a generic header with a more
specific one or replace a header with a forward declaration.

find . -name "*.idl" | grep -v web-platform | grep -v third_party | while read path; do
    interfaces=$(grep "^\(class\|interface\).*:.*" "$path" | cut -d' ' -f2)
    if [ -n "$interfaces" ]; then
        if [[ "$interfaces" == *$'\n'* ]]; then
          regexp="\("
          for i in $interfaces; do regexp="$regexp$i\|"; done
          regexp="${regexp%%\\\|}\)"
        else
          regexp="$interfaces"
        fi
        interface=$(basename "$path")
        rg -l "#include.*${interface%%.idl}.h" . | while read path2; do
            hits=$(grep -v "#include.*${interface%%.idl}.h" "$path2" | grep -c "$regexp" )
            if [ $hits -eq 0 ]; then
                echo "Removing ${interface} from ${path2}"
                grep -v "#include.*${interface%%.idl}.h" "$path2" > "$path2".tmp
                mv -f "$path2".tmp "$path2"
            fi
        done
    fi
done

Differential Revision: https://phabricator.services.mozilla.com/D55442
2019-12-04 15:01:19 +00:00
Bogdan Tara
ad50e1ed6f Backed out 6 changesets (bug 1552176) for causing Hazard bustages CLOSED TREE
Backed out changeset c79b90bae420 (bug 1552176)
Backed out changeset 4b970cc771ca (bug 1552176)
Backed out changeset de7aa0eaf4c8 (bug 1552176)
Backed out changeset c8e692a40cd3 (bug 1552176)
Backed out changeset 68882d1eccac (bug 1552176)
Backed out changeset 692e5e51e19e (bug 1552176)
2019-11-11 12:11:36 +02:00
Valentin Gosu
2979ae362f Bug 1552176 - pass TRRMode into nsHTMLDNSPrefetch methods r=dragana
Differential Revision: https://phabricator.services.mozilla.com/D49159
2019-11-10 17:12:19 +00:00
Bogdan Tara
c68efedde9 Backed out 6 changesets (bug 1552176) for bustages complaining about ServiceWorkerManager.cpp CLOSED TREE
Backed out changeset bff9110e434e (bug 1552176)
Backed out changeset ac8f8a6dbd98 (bug 1552176)
Backed out changeset 8dd630e7534a (bug 1552176)
Backed out changeset 7ce9e220cdb9 (bug 1552176)
Backed out changeset ee9911acfcd4 (bug 1552176)
Backed out changeset 652b3bd6848d (bug 1552176)
2019-11-08 22:18:05 +02:00
Valentin Gosu
43d9fe0939 Bug 1552176 - pass TRRMode into nsHTMLDNSPrefetch methods r=dragana
Differential Revision: https://phabricator.services.mozilla.com/D49159
2019-11-08 17:13:47 +00:00
Mirko Brodesser
8462bc2a30 Bug 1593222: part 12) Rename "nsNodeUtils.*" to "MutationObservers.*". r=smaug
Depends on D51827

Differential Revision: https://phabricator.services.mozilla.com/D51828
2019-11-06 09:08:06 +00:00
Mirko Brodesser
0ce85ec381 Bug 1593222: part 9) Move non-animation notification methods from nsNodeUtils to MutationObservers. r=smaug
The remaining notification methods are moved in a separate commit. The
files are renamed to `MutationObservers.*` in a follow-up commit.

Depends on D51824

Differential Revision: https://phabricator.services.mozilla.com/D51825
2019-11-05 21:32:53 +00:00
Noemi Erli
f3b08701bb Backed out 5 changesets (bug 1552176) for causing multiple build bustages CLOSED TREE
Backed out changeset 203060e4af95 (bug 1552176)
Backed out changeset b52f0ff800c8 (bug 1552176)
Backed out changeset 9f8d159fe252 (bug 1552176)
Backed out changeset 751b518e08fa (bug 1552176)
Backed out changeset a11ffd474c0c (bug 1552176)
2019-11-02 23:20:28 +02:00
Valentin Gosu
fb3572ddfc Bug 1552176 - pass TRRMode into nsHTMLDNSPrefetch methods r=dragana
Differential Revision: https://phabricator.services.mozilla.com/D49159
2019-11-02 20:43:30 +00:00
Jonathan Kingston
95e38caf6d Bug 1585582 - Don't parse manifest when storage is disabled r=baku
Differential Revision: https://phabricator.services.mozilla.com/D47958
2019-10-16 15:36:51 +00:00
Paul Zuehlcke
8c3467e7d0 Bug 1574480 - Updated browser.js and OfflineAppsChild.jsm to use PermissionManager principal methods. r=johannh,smaug
Differential Revision: https://phabricator.services.mozilla.com/D42620
2019-09-10 10:57:07 +00:00
Coroiu Cristina
bfd7e0c599 Backed out changeset d2867a062f45 (bug 1574480) for browser-chrome failures at browser/base/content/test/general/browser_offlineQuotaNotification.js on a CLOSED TREE 2019-09-05 18:38:42 +03:00
Paul Zuehlcke
1e987df1b1 Bug 1574480 - Updated browser.js and OfflineAppsChild.jsm to use PermissionManager principal methods. r=johannh,smaug
Differential Revision: https://phabricator.services.mozilla.com/D42620
2019-09-05 13:37:55 +00:00
Thomas Nguyen
c05a8b9882 Bug 1528697 - Remove ReferrerPolicy.h and add utils to ReferrerInfo r=ckerschb
Differential Revision: https://phabricator.services.mozilla.com/D41956
2019-08-21 12:09:06 +00:00
Emilio Cobos Álvarez
eb9ef93279 Bug 1572526 - Move a bunch of code that's only called by HTMLLinkElement out of Link.cpp. r=bzbarsky
Seems like a more logical place for it to live.

Differential Revision: https://phabricator.services.mozilla.com/D41270
2019-08-15 14:10:08 +00:00