Ehsan Akhgari
cfb1b88614
Bug 1525458 - Part 1: Only emit the loaded events for various content blocking categories in the presence of an allow-list entry for the top-level document when content would have been blocked otherwise; r=baku,dimi
...
Previously the code here used to emit the loaded events for every
resource examined by the URL Classifier Features (in other words, every
third party resource). But we only need to emit the events in cases
where without the presence of the allow-list we would have blocked the
content.
Differential Revision: https://phabricator.services.mozilla.com/D20874
--HG--
extra : moz-landing-system : lando
2019-02-28 15:29:10 +00:00
Cosmin Sabou
00f3836a87
Merge mozilla-inbound to mozilla-central. a=merge
2019-02-28 12:57:50 +02:00
Boris Zbarsky
9c5da5f234
Bug 1489308 part 9. Remove now-unused wyciwyg bits. r=mccr8
...
Differential Revision: https://phabricator.services.mozilla.com/D17327
--HG--
rename : dom/html/test/browser_refresh_wyciwyg_url.js => dom/html/test/browser_refresh_after_document_write.js
rename : dom/html/test/file_refresh_wyciwyg_url.html => dom/html/test/file_refresh_after_document_write.html
extra : moz-landing-system : lando
2019-02-28 01:09:48 +00:00
Jonathan Kingston
f6680698bd
Bug 1525319 - Removing context from OnDataAvailable r=valentin
...
Differential Revision: https://phabricator.services.mozilla.com/D20881
--HG--
extra : moz-landing-system : lando
2019-02-27 23:42:27 +00:00
Jonathan Kingston
dd4c731d8c
Bug 1525319 - Changing js to remove context from onStartRequest and onStopRequest r=valentin
...
Differential Revision: https://phabricator.services.mozilla.com/D20771
--HG--
extra : moz-landing-system : lando
2019-02-27 23:41:54 +00:00
Jonathan Kingston
c4853316e7
Bug 1525319 - Removing context from OnStopRequest r=valentin
...
Differential Revision: https://phabricator.services.mozilla.com/D20770
--HG--
extra : moz-landing-system : lando
2019-02-27 23:41:31 +00:00
Jonathan Kingston
f7e35ae39e
Bug 1525319 - Removing context from OnStartRequest r=valentin
...
Differential Revision: https://phabricator.services.mozilla.com/D20769
--HG--
extra : moz-landing-system : lando
2019-02-27 23:41:04 +00:00
Ciure Andrei
a5c0678ae4
Backed out changeset d158405da514 (bug 1528352) for perma failing test_udpsocket.js CLOSED TREE
2019-02-28 01:58:42 +02:00
Byron Campen [:bwc]
973021e793
Bug 1528352: Logging improvements in nsUDPSocket, and handle negative returns from PR_RecvFrom properly. r=mayhemer
...
Differential Revision: https://phabricator.services.mozilla.com/D20565
--HG--
extra : moz-landing-system : lando
2019-02-27 15:39:57 +00:00
Ciure Andrei
8d2894e70d
Backed out 12 changesets (bug 1525245) for failing worker-interception.https.html CLOSED TREE
...
Backed out changeset 009e7457b990 (bug 1525245)
Backed out changeset efb2e8fca464 (bug 1525245)
Backed out changeset 6a8401de3237 (bug 1525245)
Backed out changeset 38e802661b14 (bug 1525245)
Backed out changeset d02e3f436390 (bug 1525245)
Backed out changeset 10afd61b7582 (bug 1525245)
Backed out changeset 6b92fb3666d1 (bug 1525245)
Backed out changeset 476af2d7efe5 (bug 1525245)
Backed out changeset 43ad14e323a1 (bug 1525245)
Backed out changeset 94295e3fb027 (bug 1525245)
Backed out changeset d01ead2270e9 (bug 1525245)
Backed out changeset 6bdda622a04a (bug 1525245)
2019-02-28 00:55:39 +02:00
Andrea Marchesini
26364d101d
Bug 1487113 - AltDataOutputStreamChild must be nsIAsyncOutputStream, r=valentin
...
Differential Revision: https://phabricator.services.mozilla.com/D21379
--HG--
extra : moz-landing-system : lando
2019-02-27 20:50:48 +00:00
Andrea Marchesini
6dd0ecd7d0
Bug 1525245 - Stabilize cookiePolicy/cookiePermission for live documents - part 12 - new CookieSettings for SharedWorkers and ServiceWorkers, r=Ehsan
...
Differential Revision: https://phabricator.services.mozilla.com/D21357
--HG--
extra : moz-landing-system : lando
2019-02-27 19:58:26 +00:00
Andrea Marchesini
477f2b65c3
Bug 1525245 - Stabilize cookiePolicy/cookiePermission for live documents - part 11 - windows/workers/documents must keep the current cookie settings and ignore changes, r=Ehsan
...
Differential Revision: https://phabricator.services.mozilla.com/D18960
--HG--
extra : moz-landing-system : lando
2019-02-27 19:58:07 +00:00
Andrea Marchesini
1b7b09b29f
Bug 1525245 - Stabilize cookiePolicy/cookiePermission for live documents - part 9 - Tests for DOM Cache and cookie settings changing, r=Ehsan
...
Differential Revision: https://phabricator.services.mozilla.com/D18957
--HG--
extra : moz-landing-system : lando
2019-02-27 19:57:27 +00:00
Andrea Marchesini
13d01cb0bd
Bug 1525245 - Stabilize cookiePolicy/cookiePermission for live documents - part 8 - Tests for ServiceWorkers and cookie settings changing, r=Ehsan
...
Differential Revision: https://phabricator.services.mozilla.com/D18956
--HG--
extra : moz-landing-system : lando
2019-02-27 19:57:09 +00:00
Andrea Marchesini
bbf2814e97
Bug 1525245 - Stabilize cookiePolicy/cookiePermission for live documents - part 7 - Tests for IndexedDB and cookie settings changing, r=Ehsan,asuth
...
Differential Revision: https://phabricator.services.mozilla.com/D18955
--HG--
extra : moz-landing-system : lando
2019-02-27 19:56:57 +00:00
Andrea Marchesini
19d747280e
Bug 1525245 - Stabilize cookiePolicy/cookiePermission for live documents - part 6 - Tests for SharedWorker and cookie settings changing, r=Ehsan
...
Differential Revision: https://phabricator.services.mozilla.com/D18954
--HG--
extra : moz-landing-system : lando
2019-02-27 19:56:39 +00:00
Andrea Marchesini
2c669f9cbd
Bug 1525245 - Stabilize cookiePolicy/cookiePermission for live documents - part 5 - BroadcastChannel must be blocked when cookie jar access is denied to avoid communication between live and new documents, r=Ehsan
...
Differential Revision: https://phabricator.services.mozilla.com/D18953
--HG--
extra : moz-landing-system : lando
2019-02-27 19:56:20 +00:00
Andrea Marchesini
27309db8bb
Bug 1525245 - Stabilize cookiePolicy/cookiePermission for live documents - part 4 - Storage tests, r=asuth
...
Differential Revision: https://phabricator.services.mozilla.com/D18952
--HG--
extra : moz-landing-system : lando
2019-02-27 19:56:07 +00:00
Andrea Marchesini
dec5a16bcd
Bug 1525245 - Stabilize cookiePolicy/cookiePermission for live documents - part 1 - information stored into loadInfo, r=Ehsan,ckerschb
...
Differential Revision: https://phabricator.services.mozilla.com/D18949
--HG--
extra : moz-landing-system : lando
2019-02-27 19:55:11 +00:00
Honza Bambas
3b626a1544
Bug 1527827 - Add ShutdownPhase::ShutdownCycleCollector triggered after the CycleCollector shutdown, r=froydnj
...
Differential Revision: https://phabricator.services.mozilla.com/D21047
--HG--
extra : moz-landing-system : lando
2019-02-27 12:57:11 +00:00
Ehsan Akhgari
45c7ece733
Bug 1530076 - Part 1: Add support for modifying the default referrer policy that is applied to third-party trackers when the cookie policy is set to reject third-party trackers; r=valentin
...
This is more complex than merely modifying NS_GetDefaultReferrerPolicy()
because at the time most (all?) callers call nsIHttpChannel::SetReferrer/
nsIHttpChannel::SetReferrerWithPolicy before the channel is opened,
which means we won't know whether the channel is a tracking resource or
not yet. So we would need to re-evaluate this decision after that
information becomes available. For that, we need to remember the
original URI argument passed to these functions since that information
is currently destroyed and isn't persisted anywhere in the system.
Differential Revision: https://phabricator.services.mozilla.com/D20901
--HG--
extra : moz-landing-system : lando
2019-02-26 21:30:27 +00:00
Jeff Walden
a25f0304c2
Bug 1453456
- Remove nsCRT::IsAscii(char16_t) in favor of mozilla::IsAscii. r=froydnj
2019-02-25 12:21:15 -08:00
Ehsan Akhgari
66c9fa5c58
Bug 1529836 - Part 2: Add a test for capping the maximum life-time of client-side cookies; r=baku
...
Depends on D20780
Differential Revision: https://phabricator.services.mozilla.com/D20781
--HG--
extra : moz-landing-system : lando
2019-02-26 18:34:10 +00:00
Ehsan Akhgari
95562b6904
Bug 1529836 - Part 1: Add support for capping the maximum life-time of client-side cookies; r=baku
...
Differential Revision: https://phabricator.services.mozilla.com/D20780
--HG--
extra : moz-landing-system : lando
2019-02-26 18:34:37 +00:00
Gurzau Raul
a12ddd1865
Backed out 11 changesets (bug 1525245) for failing at test_cookies_thirdparty.js on a CLOSED TREE.
...
Backed out changeset 1dcb31a1d5be (bug 1525245)
Backed out changeset 4cde0e38ada8 (bug 1525245)
Backed out changeset d3e99dd3fc32 (bug 1525245)
Backed out changeset a565014fdd8d (bug 1525245)
Backed out changeset 20f336320ce1 (bug 1525245)
Backed out changeset d8ee13b6a17d (bug 1525245)
Backed out changeset b79ec111bf41 (bug 1525245)
Backed out changeset 858d08371107 (bug 1525245)
Backed out changeset 1c359cdcf69f (bug 1525245)
Backed out changeset d65fb2d2a243 (bug 1525245)
Backed out changeset 28147c8790d3 (bug 1525245)
2019-02-26 22:09:25 +02:00
Andrea Marchesini
fc669b1e23
Bug 1525245 - Stabilize cookiePolicy/cookiePermission for live documents - part 11 - windows/workers/documents must keep the current cookie settings and ignore changes, r=Ehsan
...
Differential Revision: https://phabricator.services.mozilla.com/D18960
--HG--
extra : moz-landing-system : lando
2019-02-26 17:43:58 +00:00
Andrea Marchesini
d1cca7f210
Bug 1525245 - Stabilize cookiePolicy/cookiePermission for live documents - part 9 - Tests for DOM Cache and cookie settings changing, r=Ehsan
...
Differential Revision: https://phabricator.services.mozilla.com/D18957
--HG--
extra : moz-landing-system : lando
2019-02-26 17:38:23 +00:00
Andrea Marchesini
043af4a25c
Bug 1525245 - Stabilize cookiePolicy/cookiePermission for live documents - part 8 - Tests for ServiceWorkers and cookie settings changing, r=Ehsan
...
Differential Revision: https://phabricator.services.mozilla.com/D18956
--HG--
extra : moz-landing-system : lando
2019-02-26 17:37:57 +00:00
Andrea Marchesini
4b57994849
Bug 1525245 - Stabilize cookiePolicy/cookiePermission for live documents - part 7 - Tests for IndexedDB and cookie settings changing, r=Ehsan,asuth
...
Differential Revision: https://phabricator.services.mozilla.com/D18955
--HG--
extra : moz-landing-system : lando
2019-02-26 17:37:50 +00:00
Andrea Marchesini
9e327d8957
Bug 1525245 - Stabilize cookiePolicy/cookiePermission for live documents - part 6 - Tests for SharedWorker and cookie settings changing, r=Ehsan
...
Differential Revision: https://phabricator.services.mozilla.com/D18954
--HG--
extra : moz-landing-system : lando
2019-02-26 17:37:48 +00:00
Andrea Marchesini
084ddbbf6d
Bug 1525245 - Stabilize cookiePolicy/cookiePermission for live documents - part 5 - BroadcastChannel must be blocked when cookie jar access is denied to avoid communication between live and new documents, r=Ehsan
...
Differential Revision: https://phabricator.services.mozilla.com/D18953
--HG--
extra : moz-landing-system : lando
2019-02-26 17:37:46 +00:00
Andrea Marchesini
29eaa174c6
Bug 1525245 - Stabilize cookiePolicy/cookiePermission for live documents - part 4 - Storage tests, r=asuth
...
Differential Revision: https://phabricator.services.mozilla.com/D18952
--HG--
extra : moz-landing-system : lando
2019-02-26 17:36:26 +00:00
Andrea Marchesini
309c007d8d
Bug 1525245 - Stabilize cookiePolicy/cookiePermission for live documents - part 1 - information stored into loadInfo, r=Ehsan,ckerschb
...
Differential Revision: https://phabricator.services.mozilla.com/D18949
--HG--
extra : moz-landing-system : lando
2019-02-26 17:34:36 +00:00
Narcis Beleuzu
36e0294e17
Backed out 2 changesets (bug 1529836) for mochitest failures on test_documentcookies_maxage.html . CLOSED TREE
...
Backed out changeset d8ec58f95f80 (bug 1529836)
Backed out changeset 2fa205089aea (bug 1529836)
2019-02-26 17:57:02 +02:00
Ehsan Akhgari
c8ce081831
Bug 1529836 - Part 2: Add a test for capping the maximum life-time of client-side cookies; r=baku
...
Depends on D20780
Differential Revision: https://phabricator.services.mozilla.com/D20781
--HG--
extra : moz-landing-system : lando
2019-02-25 06:57:10 +00:00
Ehsan Akhgari
949ce9392e
Bug 1529836 - Part 1: Add support for capping the maximum life-time of client-side cookies; r=baku
...
Differential Revision: https://phabricator.services.mozilla.com/D20780
--HG--
extra : moz-landing-system : lando
2019-02-25 06:57:23 +00:00
Ehsan Akhgari
0ba3cee181
Bug 1529784 - Remove an unnecessary call to SchemeIs; r=baku
...
Differential Revision: https://phabricator.services.mozilla.com/D20782
--HG--
extra : moz-landing-system : lando
2019-02-25 06:57:50 +00:00
Byron Campen [:bwc]
25ad4a9108
Bug 1521879 - Part 1.1: Compensate for changes to how IPC headers are generated in the last rebase. r=mjf
...
Differential Revision: https://phabricator.services.mozilla.com/D19975
--HG--
rename : media/webrtc/signaling/src/peerconnection/MediaTransportHandlerParent.h => dom/media/webrtc/MediaTransportParent.h
rename : media/webrtc/signaling/src/peerconnection/MediaTransportHandlerParent.cpp => media/webrtc/signaling/src/peerconnection/MediaTransportParent.cpp
extra : moz-landing-system : lando
2019-02-25 21:50:58 +00:00
Byron Campen [:bwc]
8b6cc6a51f
Bug 1521879 - Part 1: IPC-based MediaTransport implementation r=mjf
...
Differential Revision: https://phabricator.services.mozilla.com/D17273
--HG--
extra : moz-landing-system : lando
2019-02-25 21:50:42 +00:00
Noemi Erli
7e23372938
Merge mozilla-central to autoland. a=merge CLOSED TREE
...
--HG--
extra : rebase_source : de8796d5d7d7079af1b895a2f537371885f8cc6c
2019-02-26 00:09:40 +02:00
Christoph Kerschbaumer
c8bb3d7749
Bug 1529869: Remove the 2 from speculate speculative(Anonymous)Connect2 within nsISpeculativeConnect.idl. r=valentin
2019-02-24 20:26:56 +01:00
Gurzau Raul
e6740c75fc
Backed out 10 changesets (bug 1521879) for causing bug 1530107. a=backout
...
Backed out changeset f597a73a6eac (bug 1521879)
Backed out changeset 0bb76534f207 (bug 1521879)
Backed out changeset abcb8be12adf (bug 1521879)
Backed out changeset ed6c8d3bbfde (bug 1521879)
Backed out changeset 1addf1e15b55 (bug 1521879)
Backed out changeset 6b709cd9a479 (bug 1521879)
Backed out changeset 07747027c59c (bug 1521879)
Backed out changeset a6105ccc188c (bug 1521879)
Backed out changeset 48c9c643e7bb (bug 1521879)
Backed out changeset d4004105a04a (bug 1521879)
2019-02-25 12:12:15 +02:00
Nika Layzell
a5cbaaf6e7
Bug 1522579 - Part 4: Remove {As,Is}ContentParent, r=mccr8
...
These casts are now unnecessary after Part 2, due to all consumers directly
using `ContentParent`.
Depends on D20551
Differential Revision: https://phabricator.services.mozilla.com/D20552
--HG--
extra : moz-landing-system : lando
2019-02-25 20:04:51 +00:00
Nika Layzell
305c3ca912
Bug 1522579 - Part 3: Remove consumers of nsIContentChild, r=mccr8
...
Like Part 2, however for `nsIContentChild`.
Depends on D20550
Differential Revision: https://phabricator.services.mozilla.com/D20551
--HG--
extra : moz-landing-system : lando
2019-02-25 20:04:49 +00:00
Nika Layzell
1e93329f70
Bug 1522579 - Part 2: Remove consumers of nsIContentParent, r=mccr8
...
This patch tries to move them to `ContentParent` instead.
`ProcessPriorityManagerImpl::ObserveContentParentCreated` could not be moved
due to using `do_QueryInterface` to cast from a `nsISupports` down to the
`ContentParent` object. This could be fixed to remove the interfaces entirely,
but I left that for a follow-up.
Depends on D20549
Differential Revision: https://phabricator.services.mozilla.com/D20550
--HG--
extra : moz-landing-system : lando
2019-02-25 20:04:47 +00:00
Alex Gaynor
0e903787da
Bug 1415508 - use Span in constructing a byte input stream; r=mayhemer
...
Differential Revision: https://phabricator.services.mozilla.com/D20687
--HG--
extra : moz-landing-system : lando
2019-02-25 19:11:20 +00:00
Agi Sferro
d6b900089c
Bug 1522137 - Make resource://android return a nsIJARURI. r=snorp,mayhemer,bzbarsky
...
resource://android URIs always point to a "jar:" URI so it doesn't make sense
that the returned URL object implements nsIFileURL.
This also makes it so extensions can be loaded from a resource://android URI.
Audited all places where we use `nsIJARURI` and check for places where we
assume it looks like `jar:`: the only (!) place where we do that is here:
https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/dom/xhr/XMLHttpRequestMainThread.cpp#1852
Where we have special handling for `jar:` URIs. It looks like we would have
less special handling for such a request to a `resource://android` and it could
be fixed by just checking for the interface instead, but that's what's already
happening today so it should work. That code is never reached for
`resource://android` URIs as `mIsMappedArrayBuffer` is false for those URIs
(see #2822 ). And the code is consistent in checking for the scheme instead of
the interface (the other check is here:
https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/dom/xhr/XMLHttpRequestMainThread.cpp#2822 )
Audited all places where we do `EqualsLiteral("jar")`:
https://searchfox.org/mozilla-central/search?q=.EqualsLiteral%28%22jar%22%29&path=
`SubstituteRemoteChannel`: looks interesting, but uses
`nsISubstitutingProtocolHandler::ResolveURI` to first get the real URI (which
is a `jar:`) so it works for our case.
https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/netwerk/protocol/res/ExtensionProtocolHandler.cpp#414
`SubstitutingProtocolHandler.cpp`
This case is explicitly fixed by this change, making it account for both
`"jar"` and `"resource"`.
https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/netwerk/protocol/res/SubstitutingProtocolHandler.cpp#299
`ReadSourceFromFileName`: this also looks interesting, but uses the channel to
get the URI which returns the real `"jar"` URI and not the mapped `"resource"`.
https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/js/xpconnect/src/XPCJSRuntime.cpp#2837
`nsStringBundle.cpp`
Accounts for both `"jar"` and `"resource"`, so it should work the same.
https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/intl/strres/nsStringBundle.cpp#437
Audited all places where we use `nsINestedURI` to make sure they would work for
a `nsIJARURI` which does not implement `nsINestedURI`.
`BrowserContentHandler.jsm`
Uses `nsINestedURI` to figure out if a URI is local or not and then it checks
whether it's a `"file"`, `"resource"` or `"chrome"` URI, for a `nsIJARURI &
nsINestedURI` it would return a `"file"` which passes the test, for a
`nsIJARURI` alone it would return `"resource"` which is also considered local
by this code, so the result wouldn't change.
https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/browser/components/BrowserContentHandler.jsm#395-399
`nsScriptSecurityManager.cpp`
`GetOriginFromURI`: This is the reason why `SubstitutingJARURI` doesn't
implement `nsINestedURI`, the origin is computed starting from the innermost
URI, which in our case would be a file. The behavior in our case is that the
origin from a `resource://android` URI behaves like other `resource://` URIs,
which is what we expect.
https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/caps/nsScriptSecurityManager.cpp#169
`CheckLoadURIWithPrincipal`: for `nsIJARURI & nsINestedURI` this code will only
allow pages from the same jar to be in the same origin (which is correct), for
`nsIJARURI` this code is unreachable and it would allow every
`resource://android` to load every other `resource://android` URI (which is
essentially the same thing).
https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/caps/nsScriptSecurityManager.cpp#874-876
`nsDocShell.cpp`
`DisplayLoadError`: Just looping through the nested URI chain to build an error
message, no concerns here (it would just ignore the `jar:` part, which is
fine).
https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/docshell/base/nsDocShell.cpp#3986
`DoURILoad`: Looking for `view-source`, no concerns for `resource://android`.
https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/docshell/base/nsDocShell.cpp#9645
`nsObjectLoadingContent.cpp`
Also looking for `view-source`, no concerns.
https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/dom/base/nsObjectLoadingContent.cpp#2004
`nsIconURI.cpp`/`nsIconURI.h`
Exposing `nsINestedURI`. No concerns.
https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/image/decoders/icon/nsIconURI.cpp#58
`nsJARURI.cpp`/`nsJARURI.h`
Exposing `nsINestedURI`, the subject of this audit.
https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/modules/libjar/nsJARURI.cpp#45
`nsIOService.cpp`
`URIChainHasFlags`: This code looks at the chain of nested URIs to figure out
if the chain of protocols has a certain flags. for `nsIJARURI & nsINestedURI`
it would look at both `jar:` and `file:` protocols, while in `nsIJARURI` it
would only look at the `resource:` protocol, which is our intention, since we
want this URI to be treated like a `resource:` URI and nothing else. Note the
`resource:` URI is always local (enforced by `NewURI`), so this should be ok.
https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/netwerk/base/nsIOService.cpp#1494
`nsNetUtil.cpp`/`nsNetUtil.h`
Implementation of `NS_ImplGetInnermostURI`, which wouldn't work for `nsIJARURI`
alone, as expected.
https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/netwerk/base/nsNetUtil.h#704
`nsSimpleNestedURI.cpp`/`nsSimpleNestedURI.h`
Implementing `nsINestedURI` for `nsSimpleNestedURI`, no concerns.
https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/netwerk/base/nsSimpleNestedURI.cpp#19
`nsViewSourceHandler.cpp`
Looking at `view-source` inner URI to get the flags, no concerns.
https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/netwerk/protocol/viewsource/nsViewSourceHandler.cpp#49
`nsHtml5StreamParser.cpp`/`nsHtml5TreeOpExecutor.cpp`
More `view-source` handling code. No concerns.
https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/parser/html/nsHtml5StreamParser.cpp#310
https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/parser/html/nsHtml5TreeOpExecutor.cpp#884
`DownloadPlatform.cpp`
`IsURLPossiblyFromWeb`: This line is unreachable as the method would return
true because resource has `URI_IS_UI_RESOURCE`.
https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/toolkit/components/downloads/DownloadPlatform.cpp#314
`getAnonymizedPath`: This code looks a little scary, and it's the first one
that seems to conflate the fact that `jar: == nsINestedURI`.
On the android case (line 2130) this code manually replaces the
`resource://android` URI with a `jar:` URI, so it wouldn't matter whether
`resource://android` implements `nsINestedURI` or not.
Actually this code could be a lot easier by using
`nsISubstitutingURL::resolveURI`, maybe I should open a bug.
https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/toolkit/components/search/SearchService.jsm#2148
`getRemoteTypeForURIObject`: This also looks interesting. The switch at line
157 would go straight to line 218 for `resource:` URIs (irrespective of
`nsINestedURI`) and then for `nsINestedURI` we would look at the `jar:` URI
(and eventually the `file:` URI). While for not `nsINestedURI` we would call
straight to `validatedWebRemoteType`. This might return `WEB_REMOTE_TYPE`
instead of `FILE_REMOTE_TYPE`, but since it's already happening it should be ok
(`resource://android` maps _today_ to a `jar:` file that return
`WEB_RETURN_TYPE`)
https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/toolkit/modules/E10SUtils.jsm#150
`getURIHost`:
This is another piece of code that benefits from not implementing
`nsINestedURI` as the host would be correctly `"android"` instead of the apk
path.
https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/toolkit/mozapps/downloads/DownloadUtils.jsm#390
`initDialog`:
Download dialog would show the `resource://android` URI instead of the actual
`jar:` URI, kind of expected.
https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/toolkit/mozapps/downloads/HelperAppDlg.jsm#423
There are no places in the codebase where we do `== "jar"`. Looks like I've
already looked at all hits for "jar" too.
Checked for `"jar:` too and It looks like they are all from code that tries to
build a `jar:` URI manually which is fine for this change.
Audited all `schemeIs("jar")` occurrences:
https://searchfox.org/mozilla-central/search?q=schemeIs(%22jar%22)&path=
`browser-identity.js`
Uses the channel URI which is always resolved to `jar:`, so that works
regardless. See also:
https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/netwerk/protocol/res/SubstitutingProtocolHandler.cpp#229
https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/browser/base/content/browser-siteIdentity.js#812
`tabbrowser.js`
Only for `scheme == "about"` URIs.
https://searchfox.org/mozilla-central/rev/b36e97fc776635655e84f2048ff59f38fa8a4626/browser/base/content/tabbrowser.js#789
`HelperAppDialog.js`
Treats "jar:" and "resource" the same way.
https://searchfox.org/mozilla-central/rev/dc0adc07db3df9431a0876156f50c65d580010cb/mobile/android/components/HelperAppDialog.js#63
`WebNavigationContent.js`
This code checks if the scheme is "jar" and if the original URI is "resource"
it will use that instead, so in our case it will use the "resource" URI either
way.
https://searchfox.org/mozilla-central/rev/dc0adc07db3df9431a0876156f50c65d580010cb/toolkit/modules/addons/WebNavigationContent.js#158
Depends on D18740
Differential Revision: https://phabricator.services.mozilla.com/D16913
--HG--
extra : moz-landing-system : lando
2019-02-25 15:38:33 +00:00
Agi Sferro
3ba359e0a9
Bug 1522137 - Move resource://android handler to C++. r=mayhemer
...
This is needed to make the handler to avoid race conditions where some code
tries to access a resource://android URI before the handler has been
registered.
Depends on D18739
Differential Revision: https://phabricator.services.mozilla.com/D18740
--HG--
extra : moz-landing-system : lando
2019-02-25 15:38:21 +00:00
Agi Sferro
31607a16bb
Bug 1522137 - Fix HasSubstitution for special cases. r=bzbarsky
...
Before this change, HasSubstitution would return false for "gre" or "app" which
is incorrect, since these handlers exist.
Differential Revision: https://phabricator.services.mozilla.com/D18739
--HG--
extra : moz-landing-system : lando
2019-02-25 15:38:08 +00:00