Commit graph

89 commits

Author SHA1 Message Date
Andrea Marchesini
e31c7313ca Bug 1639833 - IntrisincStoragePrincipal should always be partitioned - part 2 - Expose PartitionedPrincipal, r=dimi
Differential Revision: https://phabricator.services.mozilla.com/D76915
2020-06-02 08:28:05 +00:00
Noemi Erli
f08b043cf6 Backed out 5 changesets (bug 1639833) for causing sessionstorage related failures CLOSED TREE
Backed out changeset b36af8d9db34 (bug 1639833)
Backed out changeset 712c11904dbe (bug 1639833)
Backed out changeset 14f1e4783582 (bug 1639833)
Backed out changeset b7f14c4cfe5d (bug 1639833)
Backed out changeset b4b25034dd83 (bug 1639833)
2020-06-01 19:31:50 +03:00
Andrea Marchesini
8c0df411d1 Bug 1639833 - IntrisincStoragePrincipal should always be partitioned - part 2 - Expose PartitionedPrincipal, r=dimi
Differential Revision: https://phabricator.services.mozilla.com/D76915
2020-06-01 11:57:46 +00:00
JulianWels
2cc2e49495 Bug 1625156 - Error page for HTTPS Only Mode. r=fluent-reviewers,ckerschb,nhnt11,flod,nika,johannh,mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D72129
2020-05-26 11:45:21 +00:00
Peter Van der Beken
f38cc0e952 Bug 1570255 - Reboot session history in parent part 1. r=smaug,necko-reviewers,valentin
This adds a new implementation of nsISHEntry
(mozilla::dom::SessionHistoryEntry). When session history in the parent
is turned on, we'll instantiate the existing nsSHistory in the parent
process, but it will store entries of this new type. The nsSHistory in
the child process will also be instantiated for now, to avoid breaking
too many assumptions, and we try to keep parent and child
implementations in sync.

mozilla::dom::SessionHistoryEntry stores most of its data in a new
structure (mozilla::dom::SessionHistoryInfo) which can be sent over IPC.
When a load starts through the DocumentChannel we create an entry of
this new type for it in the parent process in
DocumentLoadListener::Open. The SessionHistoryInfo for that entry (with
an associated ID) is then sent over IPC in the RedirectToRealChannelArgs
to the process that does the actual load, where we store it in the
nsDocShell in mLoadingEntry (and mLoadingEntryId). The parent process
keeps track of outstanding loading entries in an array (mLoadingEntries)
in the CanonicalBrowsingContext. When a load finishes the nsDocShell
transfers mLoadingEntry into mActiveEntry, and notifies the parent
process through an IPC message (HistoryCommit) with the id of that
entry. The CanonicalBrowsingContext then removes the entry from the
array and stores it in its mActiveEntry, and adds the entry to the
nsSHistory object.

There are a number of things in this patch that are broken, and a lot of
FIXME comments. However, with the pref turned off things should just be
working as before. The goal is to land this first part, and then iterate
on the new implementation until we can switch over.

Differential Revision: https://phabricator.services.mozilla.com/D65329
2020-05-20 09:09:12 +00:00
Peter Van der Beken
1990918ebe Bug 1570255 - Remove sync session history implementation. r=smaug,nika
Differential Revision: https://phabricator.services.mozilla.com/D65326
2020-05-20 09:09:06 +00:00
Razvan Maries
481517ce87 Backed out 2 changesets (bug 1558394) for perma failures on iframe_sandbox_anchor_download_block_downloads.sub.tentative.html. CLOSED TREE
Backed out changeset 79046ff8143b (bug 1558394)
Backed out changeset e13ede3c68d4 (bug 1558394)
2020-05-15 19:18:34 +03:00
Sebastian Streich
bb0855332f Bug 1558394 - Pass the TriggeringSandboxFlags to nsILoadinfo r=ckerschb,smaug,necko-reviewers,valentin
Add triggering Sandbox flags to loadinfo
***
Pass triggering Flags into Loadinfo

Differential Revision: https://phabricator.services.mozilla.com/D69588
2020-05-15 14:03:28 +00:00
Bogdan Tara
edcb53f163 Backed out 2 changesets (bug 1558394) for nsDocShellLoadState related bustage CLOSED TREE
Backed out changeset 5889105bd089 (bug 1558394)
Backed out changeset 80a0ea17c9f8 (bug 1558394)
2020-05-14 15:17:32 +03:00
Sebastian Streich
9ce86dc585 Bug 1558394 - Pass the TriggeringSandboxFlags to nsILoadinfo r=ckerschb,smaug,necko-reviewers,valentin
Add triggering Sandbox flags to loadinfo
***
Pass triggering Flags into Loadinfo

Differential Revision: https://phabricator.services.mozilla.com/D69588
2020-05-14 10:04:44 +00:00
Csoregi Natalia
517e830522 Backed out 4 changesets (bug 1629866, bug 1570255) for assertion failures on DocumentChannelChild.cpp. CLOSED TREE
Backed out changeset 214e4a11be0d (bug 1570255)
Backed out changeset db066dda1bb8 (bug 1570255)
Backed out changeset d9f75d88613e (bug 1570255)
Backed out changeset fe2d4790b73a (bug 1629866)
2020-05-13 18:30:42 +03:00
Gijs Kruitbosch
e83010ea13 Bug 1196151 - use browsing contexts for urifixupinfo's consumer property, r=mak
Differential Revision: https://phabricator.services.mozilla.com/D74559
2020-05-13 14:54:47 +00:00
Peter Van der Beken
879cba492c Bug 1570255 - Reboot session history in parent part 1. r=smaug,necko-reviewers,valentin
This adds a new implementation of nsISHEntry
(mozilla::dom::SessionHistoryEntry). When session history in the parent
is turned on, we'll instantiate the existing nsSHistory in the parent
process, but it will store entries of this new type. The nsSHistory in
the child process will also be instantiated for now, to avoid breaking
too many assumptions, and we try to keep parent and child
implementations in sync.

mozilla::dom::SessionHistoryEntry stores most of its data in a new
structure (mozilla::dom::SessionHistoryInfo) which can be sent over IPC.
When a load starts through the DocumentChannel we create an entry of
this new type for it in the parent process in
DocumentLoadListener::Open. The SessionHistoryInfo for that entry (with
an associated ID) is then sent over IPC in the RedirectToRealChannelArgs
to the process that does the actual load, where we store it in the
nsDocShell in mLoadingEntry (and mLoadingEntryId). The parent process
keeps track of outstanding loading entries in an array (mLoadingEntries)
in the CanonicalBrowsingContext. When a load finishes the nsDocShell
transfers mLoadingEntry into mActiveEntry, and notifies the parent
process through an IPC message (HistoryCommit) with the id of that
entry. The CanonicalBrowsingContext then removes the entry from the
array and stores it in its mActiveEntry, and adds the entry to the
nsSHistory object.

There are a number of things in this patch that are broken, and a lot of
FIXME comments. However, with the pref turned off things should just be
working as before. The goal is to land this first part, and then iterate
on the new implementation until we can switch over.

Differential Revision: https://phabricator.services.mozilla.com/D65329
2020-05-13 13:46:33 +00:00
Peter Van der Beken
e2a88c491c Bug 1570255 - Remove sync session history implementation. r=smaug,nika
Differential Revision: https://phabricator.services.mozilla.com/D65326
2020-05-13 14:24:55 +00:00
Jonathan Watt
4def60efaf Bug 1634370. Make docshell/ buildable outside of unified-build environment. r=farre
Differential Revision: https://phabricator.services.mozilla.com/D73255
2020-05-04 14:53:34 +00:00
Dan Glastonbury
f2d5afd779 Bug 1623565 - P4: Make browser.cache.check_doc_frequency a StaticPref. r=nika
Due to the refactored code,
browser/base/content/test/performance/browser_preferences_usage.js started
reporting more accesses to browser.cache.check_doc_frequency preference.

Differential Revision: https://phabricator.services.mozilla.com/D68319
2020-04-27 05:38:22 +00:00
Dan Glastonbury
0d4af00c6b Bug 1623565 - P2: Refactor document channel load flags computation. r=nika,mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D67797
2020-04-27 05:38:07 +00:00
Matt Woodrow
69baeef355 Bug 1602318 - Add load identifier and copy-ctor to nsDocShellLoadState. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D72110
2020-04-26 00:53:19 +00:00
Cosmin Sabou
0f970fbb19 Backed out 20 changesets (bug 1602318) for causing multiple types of failures. CLOSED TREE
Backed out changeset f71e3eff7a8c (bug 1602318)
Backed out changeset 0e0bdebf223b (bug 1602318)
Backed out changeset 44e82f4339a1 (bug 1602318)
Backed out changeset 5f341ebd8591 (bug 1602318)
Backed out changeset 088ea9d20617 (bug 1602318)
Backed out changeset 5de6321939f2 (bug 1602318)
Backed out changeset f5742e84912b (bug 1602318)
Backed out changeset 13bec3079540 (bug 1602318)
Backed out changeset 6c24ba022911 (bug 1602318)
Backed out changeset 5d0fc0102a7f (bug 1602318)
Backed out changeset fc4efd11e643 (bug 1602318)
Backed out changeset 028bd63e710d (bug 1602318)
Backed out changeset 21ad350f9617 (bug 1602318)
Backed out changeset 8f27319f2c34 (bug 1602318)
Backed out changeset db2832973382 (bug 1602318)
Backed out changeset 1756c7584491 (bug 1602318)
Backed out changeset 983e5a9abe02 (bug 1602318)
Backed out changeset a1b9429b3298 (bug 1602318)
Backed out changeset 7d1c0d968a09 (bug 1602318)
Backed out changeset a3b056ec6be3 (bug 1602318)
2020-04-24 11:15:12 +03:00
Matt Woodrow
6ed37ff3ce Bug 1602318 - Add load identifier and copy-ctor to nsDocShellLoadState. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D72110
2020-04-24 06:59:46 +00:00
Marco Bonardo
fb0662edda Bug 1628906 - First search in a tab from location bar could trigger an "Invalid URL" error page. r=Gijs,nika,mattwoodrow
Before 1496578, URIFixup::keywordToURI used to do a synchronous IPC call to be
able to access search engines from the content process. Consumers of URIFixup
didn't care. Bug 1496578 moved the IPC messaging to the callers, in particular
nsDocShell, but assumed nsDocShellLoadState wasn't loading from content.
It looks like in some cases it does, so this adds another sync IPC call for
GetFixupURIInfo.
The total numer of sync IPCs should not change from before Bug 1496578, URIFIxup
was just doing it internally, while now it happens at the call point.
Note the long term plan would be for these docshell objects callers to just
handle URIs, while the UI code should do fixup.
Bug 1375244 tracks the removal of these sync IPC messages.

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

--HG--
extra : moz-landing-system : lando
2020-04-15 22:39:38 +00:00
Christoph Kerschbaumer
7e43ad336f Bug 1621987: Implement Sec-Fetch-User. r=baku,edgar,Gijs
Differential Revision: https://phabricator.services.mozilla.com/D69392

--HG--
extra : moz-landing-system : lando
2020-04-16 08:04:26 +00:00
Kris Maglione
ca908cb413 Bug 1626404: Part 2b - Serialize source BC with LoadState. r=nika CLOSED TREE
Differential Revision: https://phabricator.services.mozilla.com/D69419

--HG--
extra : source : 2ffdab0072e7dbc56d232537aafbd2c1aa80ef14
extra : intermediate-source : ec63b18da4b9c1eb280f77a800e0e987aa3f20fa
2020-04-04 02:42:42 +00:00
Kris Maglione
9742588080 Bug 1626404: Part 2a - Store source BrowsingContext rather than DocShell in LoadState. r=nika CLOSED TREE
Differential Revision: https://phabricator.services.mozilla.com/D69418

--HG--
extra : source : 6fb384961b99821bacfd2702d36bff27231c96a7
extra : intermediate-source : b0d4b213b819d2346b1026122335553b77d63cae
2020-04-04 02:42:44 +00:00
Bogdan Tara
7a09dad859 Backed out 6 changesets (bug 1626404) for frequent timeouts on test_postMessage_onOther.html CLOSED TREE
Backed out changeset 453b858f4462 (bug 1626404)
Backed out changeset f54ce6a36c75 (bug 1626404)
Backed out changeset ec63b18da4b9 (bug 1626404)
Backed out changeset b0d4b213b819 (bug 1626404)
Backed out changeset af763de00e9d (bug 1626404)
Backed out changeset 45b68d43bdbb (bug 1626404)
2020-04-09 11:07:40 +03:00
Kris Maglione
2ee2fd5673 Bug 1626404: Part 2b - Serialize source BC with LoadState. r=nika CLOSED TREE
Differential Revision: https://phabricator.services.mozilla.com/D69419

--HG--
extra : source : 2ffdab0072e7dbc56d232537aafbd2c1aa80ef14
extra : histedit_source : dc55d2eb9489d7d06d7845827bdf73f671a9df0f
2020-04-04 02:42:42 +00:00
Kris Maglione
edf0e3ba56 Bug 1626404: Part 2a - Store source BrowsingContext rather than DocShell in LoadState. r=nika CLOSED TREE
Differential Revision: https://phabricator.services.mozilla.com/D69418

--HG--
extra : source : 6fb384961b99821bacfd2702d36bff27231c96a7
extra : histedit_source : a380148c947dd2d5d53787ec6027ab387093a7c1
2020-04-04 02:42:44 +00:00
Oana Pop Rus
87d90e34dd Backed out 6 changesets (bug 1626404) for mochitest failures in BrowsingContext.cpp on a CLOSED TREE
Backed out changeset 4a3b391e08c4 (bug 1626404)
Backed out changeset 1a5a559ec6d5 (bug 1626404)
Backed out changeset 2ffdab0072e7 (bug 1626404)
Backed out changeset 6fb384961b99 (bug 1626404)
Backed out changeset c0c2e85e33da (bug 1626404)
Backed out changeset bf32b30efa49 (bug 1626404)

--HG--
extra : rebase_source : 466bf9356539fbc47cb015df212e38698322bfb3
2020-04-09 00:22:49 +03:00
Kris Maglione
45055f3e95 Bug 1626404: Part 2b - Serialize source BC with LoadState. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D69419

--HG--
extra : moz-landing-system : lando
2020-04-04 02:42:42 +00:00
Kris Maglione
f2708013e8 Bug 1626404: Part 2a - Store source BrowsingContext rather than DocShell in LoadState. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D69418

--HG--
extra : moz-landing-system : lando
2020-04-04 02:42:44 +00:00
Marco Bonardo
758aa4f647 Bug 1496578 - convert nsDefaultURIFixup to URIFixup.jsm. r=Gijs,farre
Differential Revision: https://phabricator.services.mozilla.com/D66579

--HG--
extra : moz-landing-system : lando
2020-04-08 11:30:14 +00:00
Razvan Maries
3b66f5f729 Backed out changeset b86e8f2cc5db (bug 1496578) for build bustages on nsDocShell.cpp. CLOSED TREE 2020-04-08 01:16:33 +03:00
Marco Bonardo
7457a384f2 Bug 1496578 - convert nsDefaultURIFixup to URIFixup.jsm. r=Gijs,farre
Differential Revision: https://phabricator.services.mozilla.com/D66579

--HG--
extra : moz-landing-system : lando
2020-04-07 21:55:24 +00:00
Narcis Beleuzu
00218b8a49 Backed out 6 changesets (bug 1626404) for assertion failures on BrowsingContext.cpp . CLOSED TREE
Backed out changeset aed006ab4c20 (bug 1626404)
Backed out changeset ad87dcb98637 (bug 1626404)
Backed out changeset c065bd4594b4 (bug 1626404)
Backed out changeset a248fc78ab0c (bug 1626404)
Backed out changeset 52892d053ff1 (bug 1626404)
Backed out changeset 440b9193338a (bug 1626404)
2020-04-04 05:29:30 +03:00
Kris Maglione
9f2a2ae567 Bug 1626404: Part 2b - Serialize source BC with LoadState. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D69419

--HG--
extra : moz-landing-system : lando
2020-04-04 00:12:59 +00:00
Kris Maglione
4024d7dc97 Bug 1626404: Part 2a - Store source BrowsingContext rather than DocShell in LoadState. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D69418

--HG--
extra : moz-landing-system : lando
2020-04-04 00:13:01 +00:00
Narcis Beleuzu
ef38cbbda1 Backed out 6 changesets (bug 1626404) for bustages on LocationBase.cpp . CLOSED TREE
Backed out changeset a399dfff2725 (bug 1626404)
Backed out changeset ad3272abd830 (bug 1626404)
Backed out changeset 322c170e8301 (bug 1626404)
Backed out changeset df37f57cfa1d (bug 1626404)
Backed out changeset e255e4c9e665 (bug 1626404)
Backed out changeset 51120d617459 (bug 1626404)
2020-04-04 02:42:18 +03:00
Kris Maglione
b63f3327b7 Bug 1626404: Part 2b - Serialize source BC with LoadState. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D69419

--HG--
extra : moz-landing-system : lando
2020-04-03 22:41:27 +00:00
Kris Maglione
70a8120363 Bug 1626404: Part 2a - Store source BrowsingContext rather than DocShell in LoadState. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D69418

--HG--
extra : moz-landing-system : lando
2020-04-03 22:41:29 +00:00
Agi Sferro
e4e57c8343 Bug 1619796 - Don't fire onLoadRequest for embedder-initiated loads. r=smaug,droeh
Differential Revision: https://phabricator.services.mozilla.com/D66695

--HG--
extra : moz-landing-system : lando
2020-03-13 18:22:16 +00:00
Matt Woodrow
97c7791de6 Bug 1598520 - Don't require nsIChildChannel for process switching, as we don't need this for DocumentChannel either. r=mayhemer,kmag
Differential Revision: https://phabricator.services.mozilla.com/D57586

--HG--
extra : moz-landing-system : lando
2020-01-06 21:58:48 +00:00
Razvan Maries
188a114962 Backed out 5 changesets (bug 1598520) for perma fails on test_enumerateDevices_navigation.html. CLOSED TREE
Backed out changeset 583dac2feebc (bug 1598520)
Backed out changeset c769e733f588 (bug 1598520)
Backed out changeset 45287a2ec476 (bug 1598520)
Backed out changeset 59cff6014447 (bug 1598520)
Backed out changeset ddf722557c33 (bug 1598520)
2019-12-20 01:56:55 +02:00
Matt Woodrow
d67e6c24b8 Bug 1598520 - Don't require nsIChildChannel for process switching, as we don't need this for DocumentChannel either. r=mayhemer,kmag
Differential Revision: https://phabricator.services.mozilla.com/D57586

--HG--
extra : source : 4a5d10759bf3ad6cb392c7d83cc163e262314eb1
2019-12-19 21:47:10 +00:00
Razvan Maries
bfe0632450 Backed out 5 changesets (bug 1598520) for Linting failure. CLOSED TREE
Backed out changeset b4f71abf75fe (bug 1598520)
Backed out changeset 8e3b650d9313 (bug 1598520)
Backed out changeset 73c37ad27d18 (bug 1598520)
Backed out changeset 10ad2e4d27c3 (bug 1598520)
Backed out changeset 4a5d10759bf3 (bug 1598520)
2019-12-20 00:38:32 +02:00
Matt Woodrow
eb5ca8b399 Bug 1598520 - Don't require nsIChildChannel for process switching, as we don't need this for DocumentChannel either. r=mayhemer,kmag
Differential Revision: https://phabricator.services.mozilla.com/D57586

--HG--
extra : moz-landing-system : lando
2019-12-19 21:47:10 +00:00
Tetsuharu OHZEKI
2b7378a6ea Bug 1596820 - part 2: Remove use of nsIDocShellTreeItem in nsDocShellLoadState::SetupInheritingPrincipal. r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D57323

--HG--
extra : moz-landing-system : lando
2019-12-18 18:49:05 +00:00
Gabriele Svelto
69790bc62e Bug 1600545 - Remove useless inclusions of header files generated from IDL files in accessible/, browser/, caps/, chrome/, devtools/, docshell/, editor/, extensions/, gfx/, hal/, image/, intl/, ipc/, js/, layout/, and media/ 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/D55443

--HG--
extra : moz-landing-system : lando
2019-12-06 09:16:44 +00:00
Boris Zbarsky
75124bdd98 Bug 1517588. Use nsIPrincipal::IsSystemPrincipal instead of nsContentUtils::IsSystemPrincipal r=bzbarsky
Differential Revision: https://phabricator.services.mozilla.com/D53067

--HG--
extra : moz-landing-system : lando
2019-12-05 04:44:32 +00:00
Anny G
b023b02754 Bug 1596776 - Serialize SHEntry when sending DocShellLoadStateInit over IPC, r=peterv
Differential Revision: https://phabricator.services.mozilla.com/D54300

--HG--
extra : moz-landing-system : lando
2019-12-02 16:29:22 +00:00
Anny Gakhokidze
ac22fc9f39 Bug 1539482 - Reduce the number of IPC calls on nsISHEntry in nsDocShell::LoadHistoryEntry, r=peterv, r=nika for adding sync IPC messages
In nsDocShell::LoadHistoryEntry method, when it gets called
from parent process, there are 13 sync IPC calls on nsISHEntry
that retrieve  information from the session history entry and
create a  doc shell load state object using the retrieved
information.  By adding a new method 'CreateLoadInfo'on nsISHEntry,
inside of which the doc shell load state object will be
created (with appropriate data filled out) and returned,
we eliminate 12 sync IPC call, resulting in just 1 IPC call
to nsISHEntry::CreateLoadInfo.

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

--HG--
extra : rebase_source : a4e1fa52932fd5caabb59bd133e9fbee7f4d0e4a
extra : amend_source : f4d9f01afac0337808ba347eb997ce83e6ae1488
extra : source : 6ad53b35c7b4be933a3db1e1d45fa3da8a57abad
extra : histedit_source : c08d0cebcc11a3a4f64d01566cb62d9a334a12ec
2019-03-29 15:48:59 -04:00