gecko-dev/chrome/test/unit
Nika Layzell 98304d1200 Bug 1793463 - Part 5: Stop using contractids to fetch protocol handlers, r=necko-reviewers,xpcom-reviewers,webdriver-reviewers,whimboo,valentin,kmag
This patch replaces the previous ContractID-based lookup system for protocol
handlers, and replaces it with a new custom system in nsIOService. It will be
pre-populated with non-overridable static protocol handlers using the
StaticComponents infrastructure added in the previous part, and callers can
also dynamically register new protocol handlers at runtime.

This new system is intended to provide access to the default port and
non-dynamic protocol flags off-main-thread, by requiring these values to be
provided up-front as constants, rather than getting them from the xpcom
interface. The data is then guarded by an RWLock.

Callers which look up specific handlers by their contractID are not changed, as
the contract IDs for existing handlers have not been changed, so the lookup
will still succeed.

This change as-implemented breaks the nsGIOProtocolHandler on Linux, as it
removes the special code which would try to use that handler for some
protocols. This will be fixed in a later part by making the
nsGIOProtocolHandler use the dynamic registration APIs to register and
un-register protocol handlers at runtime in response to the GIO pref.

Differential Revision: https://phabricator.services.mozilla.com/D162804
2022-12-01 15:43:19 +00:00
..
data
head_crtestutils.js Bug 1667455 - Part 5: Stop importing Services.jsm from chrome-priv JS code, top-level single-line cases. r=kmag,webdriver-reviewers,perftest-reviewers,webcompat-reviewers,geckoview-reviewers,extension-reviewers,application-update-reviewers,pip-reviewers,twisniewski,m_kato,jdescottes,mconley,AlexandruIonescu,mossop 2022-07-11 12:41:50 +00:00
test_abi.js Bug 1799314 - Convert consumers of testing modules to import ES modules direct (miscellaneous). r=mossop 2022-11-17 12:00:32 +00:00
test_bug292789.js
test_bug380398.js Bug 1799314 - Convert consumers of testing modules to import ES modules direct (miscellaneous). r=mossop 2022-11-17 12:00:32 +00:00
test_bug397073.js Bug 1799314 - Convert consumers of testing modules to import ES modules direct (miscellaneous). r=mossop 2022-11-17 12:00:32 +00:00
test_bug399707.js Bug 1799314 - Convert consumers of testing modules to import ES modules direct (miscellaneous). r=mossop 2022-11-17 12:00:32 +00:00
test_bug401153.js Bug 1799314 - Convert consumers of testing modules to import ES modules direct (miscellaneous). r=mossop 2022-11-17 12:00:32 +00:00
test_bug415367.js Bug 1783497 - Don't throw if chrome URL canonicalization fails r=smaug 2022-10-24 15:21:29 +00:00
test_bug564667.js
test_create_channel_chrome_url.js Bug 1783497 - Don't throw if chrome URL canonicalization fails r=smaug 2022-10-24 15:21:29 +00:00
test_crlf.js
test_data_protocol_registration.js Bug 1799314 - Convert consumers of testing modules to import ES modules direct (miscellaneous). r=mossop 2022-11-17 12:00:32 +00:00
test_no_remote_registration.js Bug 1793463 - Part 5: Stop using contractids to fetch protocol handlers, r=necko-reviewers,xpcom-reviewers,webdriver-reviewers,whimboo,valentin,kmag 2022-12-01 15:43:19 +00:00
test_resolve_uris.js
xpcshell.ini Bug 1783497 - Don't throw if chrome URL canonicalization fails r=smaug 2022-10-24 15:21:29 +00:00