morgan pushed to branch mullvad-browser-128.8.0esr-14.5-1 at The Tor Project / Applications / Mullvad Browser
Commits:
705d8618 by Henry Wilkes at 2025-03-11T12:54:10+00:00
fixup! MB 63: Customize some about pages for Mullvad Browser
MB 404: Use aboutRightsMullvad.xhtml in place of aboutRights.xhtml.
- - - - -
1 changed file:
- toolkit/content/jar.mn
Changes:
=====================================
toolkit/content/jar.mn
=====================================
@@ -16,7 +16,9 @@ toolkit.jar:
content/global/aboutProfiles.xhtml
#endif
content/global/aboutRights.js
-#ifdef MOZILLA_OFFICIAL
+#ifdef MULLVAD_BROWSER
+ content/global/aboutRights.xhtml (aboutRightsMullvad.xhtml)
+#elifdef MOZILLA_OFFICIAL
content/global/aboutRights.xhtml
#else
content/global/aboutRights.xhtml (aboutRights-unbranded.xhtml)
View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/commit/705…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/commit/705…
You're receiving this email because of your account on gitlab.torproject.org.
morgan pushed to branch mullvad-browser-128.8.0esr-14.5-1 at The Tor Project / Applications / Mullvad Browser
Commits:
2a456a27 by Pier Angelo Vendrame at 2025-03-10T11:28:45-06:00
MB 38: Mullvad Browser configuration
- - - - -
c3f3d4c6 by Pier Angelo Vendrame at 2025-03-10T11:28:45-06:00
MB 1: Mullvad Browser branding
See also:
mullvad-browser#5: Product name and directory customization
mullvad-browser#12: Create new branding directories and integrate Mullvad icons+branding
mullvad-browser#14: Remove Default Built-in bookmarks
mullvad-browser#35: Add custom PDF icons for Windows builds
mullvad-browser#48: Replace Mozilla copyright and legal trademarks in mullvadbrowser.exe metadata
mullvad-browser#51: Update trademark string
mullvad-browser#104: Update shipped dll metadata copyright/licensing info
mullvad-browser#107: Add alpha and nightly icons
- - - - -
5d9bbae4 by Henry Wilkes at 2025-03-10T11:28:46-06:00
fixup! MB 1: Mullvad Browser branding
MB 312: Differentiate between release channels.
We update the brand.ftl and brand.properties files to add "Alpha" and
"Nightly" to the brand names.
We update about-wordmark.svg to be different between channels and use
context-fill to allow us to customise the appearance in
about:mullvad-browser.
We add mullvad-about-wordmark-en.ftl to provide the English text
equivalent for the wordmark, to be used by screen readers in
about:mullvad-browser.
We add mullvad-branding.css to provide branding colors for
about:mullvad-browser.
We drop firefox-wordmark.svg changes since the asset should be unused in
Mullvad Browser now that about:mullvad-browser uses about-wordmark
instead.
We drop unnecessary rules from branding aboutDialog.css and make sure
the dialog is large enough to show the wordmark for alpha and nightly.
- - - - -
2146695c by Henry Wilkes at 2025-03-10T11:28:46-06:00
Mullvad Browser strings
This commit adds strings needed by the following Mullvad Browser
patches.
- - - - -
92aca1bb by Henry Wilkes at 2025-03-10T11:28:46-06:00
fixup! Mullvad Browser strings
MB 312: Drop mullvad-browser string which has been replaced with
mullvad-about-wordmark-en.
- - - - -
7e934a44 by Pier Angelo Vendrame at 2025-03-10T11:28:47-06:00
MB 20: Allow packaged-addons in PBM.
We install a few addons from the distribution directory, but they are
not automatically enabled for PBM mode.
This commit modifies the code that installs them to also add the PBM
permission to the known ones.
- - - - -
01d964a1 by Pier Angelo Vendrame at 2025-03-10T11:28:47-06:00
MB 63: Customize some about pages for Mullvad Browser
Also:
mullvad-browser#57: Purge unneeded about: pages
- - - - -
f2941bc2 by Pier Angelo Vendrame at 2025-03-10T11:28:47-06:00
MB 37: Customization for the about dialog
- - - - -
ed70935d by Henry Wilkes at 2025-03-10T11:28:48-06:00
MB 39: Add home page about:mullvad-browser
- - - - -
c4281e50 by Henry Wilkes at 2025-03-10T11:28:48-06:00
fixup! MB 39: Add home page about:mullvad-browser
MB 312: Update the home page for different release channels.
We use about-wordmark.svg instead of firefox-wordmark.svg.
We use the colors from the mullvad-branding.css sheet to colour the
background, link text and outline colors.
We now properly support contrast themes, where we do not apply the
branding colors.
We tweak the sizing and spacing.
We switch from XHTML to HTML.
We consistently use kebab case for the DOM IDs, rather than camel case.
We drop the Open Sans font.
- - - - -
d69b0130 by hackademix at 2025-03-10T11:28:48-06:00
MB 97: Remove UI cues to install new extensions.
- - - - -
eaa55b51 by hackademix at 2025-03-10T11:28:49-06:00
MB 47: uBlock Origin customization
- - - - -
513327cd by Pier Angelo Vendrame at 2025-03-10T11:42:27-06:00
MB 21: Disable the password manager
This commit disables the about:login page and removes the "Login and
Password" section of about:preferences.
We do not do anything to the real password manager of Firefox, that is
in toolkit: it contains C++ parts that make it difficult to actually
prevent it from being built..
Finally, we modify the the function that opens about:login to report an
error in the console so that we can quickly get a backtrace to the code
that tries to use it.
- - - - -
99874c27 by Pier Angelo Vendrame at 2025-03-10T11:42:48-06:00
MB 112: Updater customization for Mullvad Browser
MB 71: Set the updater base URL to Mullvad domain
- - - - -
7cf7ac7a by Nicolas Vigier at 2025-03-10T11:42:49-06:00
MB 79: Add Mullvad Browser MAR signing keys
MB 256: Add mullvad-browser nightly mar signing key
- - - - -
f6b6ec48 by Pier Angelo Vendrame at 2025-03-10T11:42:49-06:00
MB 34: Hide unsafe and unwanted preferences UI
about:preferences allow to override some of our defaults, that could
be fingeprintable or have some other unwanted consequences.
- - - - -
ee933853 by Pier Angelo Vendrame at 2025-03-10T11:42:49-06:00
MB 160: Disable the cookie exceptions button
Besides disabling the "Delete on close checkbox", disable also the
"Manage Exceptions" button when always using PBM.
- - - - -
2d43c87a by hackademix at 2025-03-10T11:42:50-06:00
MB 163: prevent uBlock Origin from being uninstalled/disabled
- - - - -
3c0517b6 by Richard Pospesel at 2025-03-10T11:42:50-06:00
MB 188: Customize Gitlab Issue and Merge templates
- - - - -
dfeb2818 by Morgan at 2025-03-10T11:42:50-06:00
fixup! MB 188: Customize Gitlab Issue and Merge templates
add rebase template for rapid channel
- - - - -
4091dbf3 by Morgan at 2025-03-10T11:42:50-06:00
fixup! MB 188: Customize Gitlab Issue and Merge templates
tweak backport temlpate for mullvad-browser
- - - - -
a6bd37e9 by Morgan at 2025-03-10T11:42:51-06:00
fixup! MB 188: Customize Gitlab Issue and Merge templates
add /label Apps::Type::Rebase to rebase issue template
- - - - -
ce6498b8 by Morgan at 2025-03-10T11:42:51-06:00
fixup! MB 188: Customize Gitlab Issue and Merge templates
add backport template and tweak the uplift template
- - - - -
43978767 by hackademix at 2025-03-10T11:42:51-06:00
fixup! MB 188: Customize Gitlab Issue and Merge templates
TBB 41382: Replace gitlab templates ReleasePrep label references with Apps::Type::ReleasePreparation
- - - - -
e6ee15dc by rui hildt at 2025-03-10T11:42:52-06:00
MB 213: Customize the search engines list
MB 328: Refactor the search engine patch.
Upstream switched to a completely different search engine configuration
between ESR 115 and ESR 128.
We moved our configuration to a couple of JSON files that do not follow
upstream's schemas, as they are overcomplicated for our needs.
Also, we keep the old search engine extensions for now, as upstream
also kept them, and planned of removing them with Bug 1885953.
- - - - -
ff0fe851 by Pier Angelo Vendrame at 2025-03-10T11:42:52-06:00
fixup! MB 213: Customize the search engines list
MB 395: Make Leta the default search engine.
- - - - -
0cd3a258 by hackademix at 2025-03-10T11:42:52-06:00
MB 214: Enable cross-tab identity leak protection in "quiet" mode
- - - - -
c337a046 by Pier Angelo Vendrame at 2025-03-10T11:42:53-06:00
MB 80: Enable Mullvad Browser as a default browser
- - - - -
42f31630 by Pier Angelo Vendrame at 2025-03-10T11:42:53-06:00
MB 320: Temporarily disable WebRTC and WDBA on Windows.
WebRTC should be re-enabled when tor-browser#42758 is resolved, and and
the default browser agent when in general we make this feature work
again.
- - - - -
0e5b089a by Henry Wilkes at 2025-03-10T11:42:53-06:00
MB 329: Customize toolbar for mullvad-browser.
- - - - -
80367e1e by Henry Wilkes at 2025-03-10T11:42:53-06:00
Add CI for Mullvad Browser
- - - - -
a5d58219 by Kershaw Chang at 2025-03-10T11:42:54-06:00
Bug 1910593 - Don't prefetch HTTPS RR if proxyDNS is enabled, r=necko-reviewers,valentin
Differential Revision: https://phabricator.services.mozilla.com/D219528
- - - - -
275 changed files:
- .gitlab/ci/jobs/update-translations.yml
- .gitlab/issue_templates/Backport.md
- .gitlab/issue_templates/Emergency Security Issue.md
- + .gitlab/issue_templates/Rebase Browser - Alpha.md
- + .gitlab/issue_templates/Rebase Browser - Rapid.md
- + .gitlab/issue_templates/Rebase Browser - Stable.md
- .gitlab/merge_request_templates/default.md
- browser/app/Makefile.in
- browser/app/macbuild/Contents/Info.plist.in
- browser/app/module.ver
- browser/app/firefox.exe.manifest → browser/app/mullvadbrowser.exe.manifest
- + browser/app/profile/000-mullvad-browser.js
- browser/app/profile/001-base-profile.js
- browser/base/content/aboutDialog.xhtml
- browser/base/content/appmenu-viewcache.inc.xhtml
- browser/base/content/browser-menubar.inc
- browser/base/content/browser-places.js
- browser/base/content/browser.js
- browser/base/content/default-bookmarks.html
- browser/base/content/nsContextMenu.js
- browser/base/content/overrides/app-license.html
- browser/base/content/pageinfo/pageInfo.xhtml
- browser/base/content/utilityOverlay.js
- browser/branding/branding-common.mozbuild
- + browser/branding/mb-alpha/VisualElements_150.png
- + browser/branding/mb-alpha/VisualElements_70.png
- + browser/branding/mb-alpha/configure.sh
- + browser/branding/mb-alpha/content/about-logo.png
- + browser/branding/mb-alpha/content/about-logo.svg
- + browser/branding/mb-alpha/content/about-logo(a)2x.png
- + browser/branding/mb-alpha/content/about-wordmark.svg
- + browser/branding/mb-alpha/content/about.png
- + browser/branding/mb-alpha/content/aboutDialog.css
- + browser/branding/mb-alpha/content/firefox-wordmark.svg
- + browser/branding/mb-alpha/content/icon128.png
- + browser/branding/mb-alpha/content/icon16.png
- + browser/branding/mb-alpha/content/icon256.png
- + browser/branding/mb-alpha/content/icon32.png
- + browser/branding/mb-alpha/content/icon48.png
- + browser/branding/mb-alpha/content/icon64.png
- + browser/branding/mb-alpha/content/jar.mn
- + browser/branding/mb-alpha/content/moz.build
- + browser/branding/mb-alpha/content/mullvad-branding.css
- + browser/branding/mb-alpha/default128.png
- + browser/branding/mb-alpha/default16.png
- + browser/branding/mb-alpha/default22.png
- + browser/branding/mb-alpha/default24.png
- + browser/branding/mb-alpha/default256.png
- + browser/branding/mb-alpha/default32.png
- + browser/branding/mb-alpha/default48.png
- + browser/branding/mb-alpha/default64.png
- + browser/branding/mb-alpha/document.icns
- + browser/branding/mb-alpha/document.ico
- + browser/branding/mb-alpha/document_pdf.ico
- + browser/branding/mb-alpha/firefox.icns
- + browser/branding/mb-alpha/firefox.ico
- + browser/branding/mb-alpha/firefox.svg
- + browser/branding/mb-alpha/locales/en-US/brand.ftl
- + browser/branding/mb-alpha/locales/en-US/brand.properties
- + browser/branding/mb-alpha/locales/jar.mn
- + browser/branding/mb-alpha/locales/moz.build
- + browser/branding/mb-alpha/locales/mullvad-about-wordmark-en.ftl
- + browser/branding/mb-alpha/moz.build
- + browser/branding/mb-alpha/mullvadbrowser.VisualElementsManifest.xml
- + browser/branding/mb-alpha/newtab.ico
- + browser/branding/mb-alpha/newwindow.ico
- + browser/branding/mb-alpha/pbmode.ico
- + browser/branding/mb-alpha/pref/firefox-branding.js
- + browser/branding/mb-nightly/VisualElements_150.png
- + browser/branding/mb-nightly/VisualElements_70.png
- + browser/branding/mb-nightly/configure.sh
- + browser/branding/mb-nightly/content/about-logo.png
- + browser/branding/mb-nightly/content/about-logo.svg
- + browser/branding/mb-nightly/content/about-logo(a)2x.png
- + browser/branding/mb-nightly/content/about-wordmark.svg
- + browser/branding/mb-nightly/content/about.png
- + browser/branding/mb-nightly/content/aboutDialog.css
- + browser/branding/mb-nightly/content/firefox-wordmark.svg
- + browser/branding/mb-nightly/content/icon128.png
- + browser/branding/mb-nightly/content/icon16.png
- + browser/branding/mb-nightly/content/icon256.png
- + browser/branding/mb-nightly/content/icon32.png
- + browser/branding/mb-nightly/content/icon48.png
- + browser/branding/mb-nightly/content/icon64.png
- + browser/branding/mb-nightly/content/jar.mn
- + browser/branding/mb-nightly/content/moz.build
- + browser/branding/mb-nightly/content/mullvad-branding.css
- + browser/branding/mb-nightly/default128.png
- + browser/branding/mb-nightly/default16.png
- + browser/branding/mb-nightly/default22.png
- + browser/branding/mb-nightly/default24.png
- + browser/branding/mb-nightly/default256.png
- + browser/branding/mb-nightly/default32.png
- + browser/branding/mb-nightly/default48.png
- + browser/branding/mb-nightly/default64.png
- + browser/branding/mb-nightly/document.icns
- + browser/branding/mb-nightly/document.ico
- + browser/branding/mb-nightly/document_pdf.ico
- + browser/branding/mb-nightly/firefox.icns
- + browser/branding/mb-nightly/firefox.ico
- + browser/branding/mb-nightly/firefox.svg
- + browser/branding/mb-nightly/locales/en-US/brand.ftl
- + browser/branding/mb-nightly/locales/en-US/brand.properties
- + browser/branding/mb-nightly/locales/jar.mn
- + browser/branding/mb-nightly/locales/moz.build
- + browser/branding/mb-nightly/locales/mullvad-about-wordmark-en.ftl
- + browser/branding/mb-nightly/moz.build
- + browser/branding/mb-nightly/mullvadbrowser.VisualElementsManifest.xml
- + browser/branding/mb-nightly/newtab.ico
- + browser/branding/mb-nightly/newwindow.ico
- + browser/branding/mb-nightly/pbmode.ico
- + browser/branding/mb-nightly/pref/firefox-branding.js
- + browser/branding/mb-release/VisualElements_150.png
- + browser/branding/mb-release/VisualElements_70.png
- + browser/branding/mb-release/configure.sh
- + browser/branding/mb-release/content/about-logo.png
- + browser/branding/mb-release/content/about-logo.svg
- + browser/branding/mb-release/content/about-logo(a)2x.png
- + browser/branding/mb-release/content/about-wordmark.svg
- + browser/branding/mb-release/content/about.png
- + browser/branding/mb-release/content/aboutDialog.css
- + browser/branding/mb-release/content/firefox-wordmark.svg
- + browser/branding/mb-release/content/icon128.png
- + browser/branding/mb-release/content/icon16.png
- + browser/branding/mb-release/content/icon256.png
- + browser/branding/mb-release/content/icon32.png
- + browser/branding/mb-release/content/icon48.png
- + browser/branding/mb-release/content/icon64.png
- + browser/branding/mb-release/content/jar.mn
- + browser/branding/mb-release/content/moz.build
- + browser/branding/mb-release/content/mullvad-branding.css
- + browser/branding/mb-release/default128.png
- + browser/branding/mb-release/default16.png
- + browser/branding/mb-release/default22.png
- + browser/branding/mb-release/default24.png
- + browser/branding/mb-release/default256.png
- + browser/branding/mb-release/default32.png
- + browser/branding/mb-release/default48.png
- + browser/branding/mb-release/default64.png
- + browser/branding/mb-release/document.icns
- + browser/branding/mb-release/document.ico
- + browser/branding/mb-release/document_pdf.ico
- + browser/branding/mb-release/firefox.icns
- + browser/branding/mb-release/firefox.ico
- + browser/branding/mb-release/firefox.svg
- + browser/branding/mb-release/locales/en-US/brand.ftl
- + browser/branding/mb-release/locales/en-US/brand.properties
- + browser/branding/mb-release/locales/jar.mn
- + browser/branding/mb-release/locales/moz.build
- + browser/branding/mb-release/locales/mullvad-about-wordmark-en.ftl
- + browser/branding/mb-release/moz.build
- + browser/branding/mb-release/mullvadbrowser.VisualElementsManifest.xml
- + browser/branding/mb-release/newtab.ico
- + browser/branding/mb-release/newwindow.ico
- + browser/branding/mb-release/pbmode.ico
- + browser/branding/mb-release/pref/firefox-branding.js
- browser/components/BrowserContentHandler.sys.mjs
- browser/components/BrowserGlue.sys.mjs
- browser/components/about/AboutRedirector.cpp
- browser/components/about/components.conf
- browser/components/customizableui/CustomizableUI.sys.mjs
- browser/components/moz.build
- + browser/components/mullvad-browser/AboutMullvadBrowserChild.sys.mjs
- + browser/components/mullvad-browser/AboutMullvadBrowserParent.sys.mjs
- + browser/components/mullvad-browser/content/2728-sparkles.svg
- + browser/components/mullvad-browser/content/aboutMullvadBrowser.css
- + browser/components/mullvad-browser/content/aboutMullvadBrowser.html
- + browser/components/mullvad-browser/content/aboutMullvadBrowser.js
- + browser/components/mullvad-browser/jar.mn
- + browser/components/mullvad-browser/moz.build
- browser/components/newtab/AboutNewTabService.sys.mjs
- browser/components/preferences/home.inc.xhtml
- browser/components/preferences/main.js
- browser/components/preferences/preferences.xhtml
- browser/components/preferences/privacy.inc.xhtml
- browser/components/preferences/privacy.js
- browser/components/preferences/search.inc.xhtml
- + browser/components/search/extensions/brave/favicon.svg
- + browser/components/search/extensions/brave/manifest.json
- + browser/components/search/extensions/ddg-html/favicon.ico
- + browser/components/search/extensions/ddg-html/manifest.json
- browser/components/search/extensions/ddg/manifest.json
- + browser/components/search/extensions/metager/favicon.ico
- + browser/components/search/extensions/metager/manifest.json
- + browser/components/search/extensions/mojeek/favicon.ico
- + browser/components/search/extensions/mojeek/manifest.json
- + browser/components/search/extensions/mullvad-leta/favicon.svg
- + browser/components/search/extensions/mullvad-leta/manifest.json
- + browser/components/search/extensions/startpage/favicon.png
- + browser/components/search/extensions/startpage/manifest.json
- browser/components/shell/ShellService.sys.mjs
- browser/components/shell/WindowsDefaultBrowser.cpp
- browser/components/shell/nsWindowsShellService.cpp
- browser/config/mozconfigs/base-browser
- + browser/config/mozconfigs/mullvad-browser
- browser/confvars.sh
- browser/installer/package-manifest.in
- browser/installer/windows/nsis/updater_append.ini
- browser/modules/HomePage.sys.mjs
- browser/moz.build
- config/create_rc.py
- devtools/client/aboutdebugging/src/actions/runtimes.js
- devtools/client/aboutdebugging/src/components/sidebar/Sidebar.js
- devtools/client/jar.mn
- devtools/client/themes/images/aboutdebugging-firefox-aurora.svg
- devtools/client/themes/images/aboutdebugging-firefox-beta.svg
- devtools/client/themes/images/aboutdebugging-firefox-logo.svg
- devtools/client/themes/images/aboutdebugging-firefox-nightly.svg
- devtools/client/themes/images/aboutdebugging-firefox-release.svg
- + devtools/client/themes/images/aboutdebugging-mullvadbrowser-logo.svg
- docshell/base/nsAboutRedirector.cpp
- docshell/build/components.conf
- dom/chrome-webidl/NetDashboard.webidl
- moz.configure
- mozconfig-linux-aarch64
- mozconfig-linux-aarch64-dev
- mozconfig-linux-x86_64
- mozconfig-linux-x86_64-asan
- mozconfig-linux-x86_64-dev
- mozconfig-macos
- mozconfig-macos-dev
- mozconfig-windows-x86_64
- netwerk/base/Dashboard.cpp
- netwerk/base/DashboardTypes.h
- netwerk/dns/nsHostResolver.cpp
- netwerk/protocol/http/nsHttp.cpp
- netwerk/protocol/http/nsHttp.h
- netwerk/protocol/http/nsHttpChannel.cpp
- netwerk/protocol/http/nsHttpChannel.h
- netwerk/protocol/http/nsHttpConnectionInfo.h
- netwerk/protocol/http/nsHttpConnectionMgr.cpp
- netwerk/protocol/http/nsHttpHandler.cpp
- netwerk/protocol/http/nsHttpHandler.h
- + netwerk/test/unit/test_proxyDNS_leak.js
- netwerk/test/unit/xpcshell.toml
- + other-licenses/nsis/Contrib/ApplicationID/Makefile
- + other-licenses/nsis/Contrib/CityHash/Makefile
- toolkit/components/extensions/child/ext-storage.js
- toolkit/components/extensions/parent/ext-storage.js
- toolkit/components/passwordmgr/LoginHelper.sys.mjs
- toolkit/components/search/AppProvidedSearchEngine.sys.mjs
- toolkit/components/search/SearchService.sys.mjs
- + toolkit/components/search/content/brave.svg
- + toolkit/components/search/content/duckduckgo.ico
- + toolkit/components/search/content/metager.ico
- + toolkit/components/search/content/mojeek.ico
- + toolkit/components/search/content/mullvad-leta.svg
- + toolkit/components/search/content/mullvadBrowserSearchEngineIcons.json
- + toolkit/components/search/content/mullvadBrowserSearchEngines.json
- + toolkit/components/search/content/startpage.png
- + toolkit/components/search/jar.mn
- toolkit/components/search/moz.build
- toolkit/components/securitylevel/SecurityLevel.sys.mjs
- toolkit/content/aboutNetworking.js
- + toolkit/content/aboutRightsMullvad.xhtml
- + toolkit/content/aboutTelemetryMullvad.xhtml
- toolkit/content/jar.mn
- toolkit/content/widgets/moz-support-link/moz-support-link.mjs
- + toolkit/locales/en-US/toolkit/global/mullvad-browser.ftl
- toolkit/mozapps/defaultagent/EventLog.h
- toolkit/mozapps/defaultagent/SetDefaultBrowser.cpp
- toolkit/mozapps/extensions/AddonManager.sys.mjs
- toolkit/mozapps/extensions/content/aboutaddons.css
- toolkit/mozapps/extensions/internal/XPIDatabase.sys.mjs
- toolkit/mozapps/extensions/internal/XPIProvider.sys.mjs
- toolkit/mozapps/update/updater/nightly_aurora_level3_primary.der
- toolkit/mozapps/update/updater/nightly_aurora_level3_secondary.der
- toolkit/mozapps/update/updater/release_primary.der
- toolkit/mozapps/update/updater/release_secondary.der
- + toolkit/themes/shared/icons/mullvadbrowser.png
- toolkit/themes/shared/minimal-toolkit.jar.inc.mn
- toolkit/xre/nsAppRunner.cpp
- tools/lint/fluent-lint/exclusions.yml
- widget/windows/WinTaskbar.cpp
- widget/windows/moz.build
The diff was not included because it is too large.
View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/compare/2a…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/compare/2a…
You're receiving this email because of your account on gitlab.torproject.org.
morgan pushed to branch main at The Tor Project / Applications / tor-browser-build
Commits:
4c29020e by Nicolas Vigier at 2025-03-10T13:44:39+01:00
Bug 41389: Always generate and load set-config.generated-config
- - - - -
810e8e20 by Nicolas Vigier at 2025-03-10T13:44:39+01:00
Bug 41389: Remove set-config.tbb-version
The signing script will now get the version information from rbm config.
- - - - -
12 changed files:
- .gitlab/issue_templates/Release Prep - Mullvad Browser Alpha.md
- .gitlab/issue_templates/Release Prep - Tor Browser Alpha.md
- tools/signing/dmg2mar
- tools/signing/functions
- tools/signing/linux-signer-authenticode-signing
- tools/signing/linux-signer-gpg-sign
- tools/signing/linux-signer-rcodesign-sign
- tools/signing/linux-signer-sign-android-apks
- tools/signing/linux-signer-signmars
- tools/signing/set-config
- − tools/signing/set-config.tbb-version
- tools/signing/upload-update_responses-to-staticiforme
Changes:
=====================================
.gitlab/issue_templates/Release Prep - Mullvad Browser Alpha.md
=====================================
@@ -137,7 +137,7 @@ Mullvad Browser Alpha (and Nightly) are on the `main` branch
- pierov
- [ ] Ensure all builders have matching builds
- [ ] On `${STAGING_SERVER}`, ensure updated:
- - **NOTE** Having a local git branch with `main` as the upstream branch with these values saved means you only need to periodically `git pull --rebase` and update the `set-config.tbb-version` file
+ - **NOTE** Having a local git branch with `main` as the upstream branch with these values saved means you only need to periodically `git pull --rebase`
- [ ] `tor-browser-build` is on the right commit: `git tag -v mb-${MULLVAD_BROWSER_VERSION}-${MULLVAD_BROWSER_BUILD_N} && git checkout mb-${MULLVAD_BROWSER_VERSION}-${MULLVAD_BROWSER_BUILD_N}`
- [ ] `tor-browser-build/tools/signing/set-config.hosts`
- `ssh_host_builder`: ssh hostname of machine with unsigned builds
@@ -147,10 +147,6 @@ Mullvad Browser Alpha (and Nightly) are on the `main` branch
- `appstoreconnect_api_key_path`: path to json file containing appstoreconnect api key infos
- [ ] `set-config.update-responses`
- `update_responses_repository_dir`: directory where you cloned `git@gitlab.torproject.org:tpo/applications/mullvad-browser-update-responses.git`
- - [ ] `tor-browser-build/tools/signing/set-config.tbb-version`
- - `tbb_version`: mullvad browser version string, same as `var/torbrowser_version` in `rbm.conf` (examples: `11.5a12`, `11.0.13`)
- - `tbb_version_build`: the tor-browser-build build number (if `var/torbrowser_build` in `rbm.conf` is `buildN` then this value is `N`)
- - `tbb_version_type`: either `alpha` for alpha releases or `release` for stable releases
- [ ] On `${STAGING_SERVER}` in a separate `screen` session, ensure tor daemon is running with SOCKS5 proxy on the default port 9050
- [ ] On `${STAGING_SERVER}` in a separate `screen` session, run do-all-signing script:
- Run:
=====================================
.gitlab/issue_templates/Release Prep - Tor Browser Alpha.md
=====================================
@@ -192,7 +192,7 @@ Tor Browser Alpha (and Nightly) are on the `main` branch
- pierov
- [ ] Ensure all builders have matching builds
- [ ] On `${STAGING_SERVER}`, ensure updated:
- - **NOTE** Having a local git branch with `main` as the upstream branch with these values saved means you only need to periodically `git pull --rebase` and update the `set-config.tbb-version` file
+ - **NOTE** Having a local git branch with `main` as the upstream branch with these values saved means you only need to periodically `git pull --rebase`
- [ ] `tor-browser-build` is on the right commit: `git tag -v tbb-${TOR_BROWSER_VERSION}-${TOR_BROWSER_BUILD_N} && git checkout tbb-${TOR_BROWSER_VERSION}-${TOR_BROWSER_BUILD_N}`
- [ ] `tor-browser-build/tools/signing/set-config.hosts`
- `ssh_host_builder`: ssh hostname of machine with unsigned builds
@@ -202,10 +202,6 @@ Tor Browser Alpha (and Nightly) are on the `main` branch
- `appstoreconnect_api_key_path`: path to json file containing appstoreconnect api key infos
- [ ] `set-config.update-responses`
- `update_responses_repository_dir`: directory where you cloned `git@gitlab.torproject.org:tpo/applications/tor-browser-update-responses.git`
- - [ ] `tor-browser-build/tools/signing/set-config.tbb-version`
- - `tbb_version`: tor browser version string, same as `var/torbrowser_version` in `rbm.conf` (examples: `11.5a12`, `11.0.13`)
- - `tbb_version_build`: the tor-browser-build build number (if `var/torbrowser_build` in `rbm.conf` is `buildN` then this value is `N`)
- - `tbb_version_type`: either `alpha` for alpha releases or `release` for stable releases
- [ ] On `${STAGING_SERVER}` in a separate `screen` session, ensure tor daemon is running with SOCKS5 proxy on the default port 9050
- [ ] On `${STAGING_SERVER}` in a separate `screen` session, run do-all-signing script:
- Run:
=====================================
tools/signing/dmg2mar
=====================================
@@ -13,10 +13,6 @@ cd "$script_dir/../.."
# some initial checks to make sure directories and file counts are as expected...
-version=$(./rbm/rbm showconf browser --target alpha --target $SIGNING_PROJECTNAME-linux-x86_64 var/torbrowser_version)
-test "$version" = "$tbb_version" || \
- exit_error "Incorrect tor browser version: $version != $tbb_version"
-
test -d "$signed_version_dir" || \
exit_error "$signed_version_dir does not exist"
=====================================
tools/signing/functions
=====================================
@@ -13,12 +13,6 @@ function var_is_defined {
done
}
-function check_torbrowser_version_var {
- local tbver=$("$script_dir/../../rbm/rbm" showconf browser --target "$SIGNING_PROJECTNAME" var/torbrowser_version)
- test "$tbver" != "$tbb_version" && exit_error "Wrong tbb_version: $tbver != $tbb_version"
- return 0
-}
-
function check_update_responses_repository_dir {
if test -z "$update_responses_repository_dir" || ! test -d "$update_responses_repository_dir"
then
@@ -36,44 +30,43 @@ function is_project {
}
function generate_config {
- p1=$("$rbm" showconf browser var/project-name --target "$SIGNING_PROJECTNAME")
- p2=$("$rbm" showconf browser var/Project_Name --target "$SIGNING_PROJECTNAME")
- p3=$("$rbm" showconf browser var/ProjectName --target "$SIGNING_PROJECTNAME")
- p4=$("$rbm" showconf browser var/display_name --target "$SIGNING_PROJECTNAME" --target "$tbb_version_type")
- echo 'rbm_not_available=1' > "$script_dir/set-config.generated-config"
- echo "SIGNING_PROJECTNAMES=(\"$p1\" \"$p2\" \"$p3\" \"$p4\")" >> "$script_dir/set-config.generated-config"
+ local p1=$("$rbm" showconf browser var/project-name --target \
+ "$SIGNING_PROJECTNAME")
+ local p2=$("$rbm" showconf browser var/Project_Name --target \
+ "$SIGNING_PROJECTNAME")
+ local p3=$("$rbm" showconf browser var/ProjectName --target \
+ "$SIGNING_PROJECTNAME")
+ p4=$("$rbm" showconf browser var/display_name --target \
+ "$SIGNING_PROJECTNAME" --target "$tbb_version_type")
+ echo "SIGNING_PROJECTNAMES=(\"$p1\" \"$p2\" \"$p3\" \"$p4\")" > \
+ "$script_dir/set-config.generated-config"
+ local tbb_version_type=$("$rbm" showconf browser \ var/browser_default_channel \
+ --target "$SIGNING_PROJECTNAME")
+ local tbb_version=$("$rbm" showconf browser var/torbrowser_version \
+ --target "$SIGNING_PROJECTNAME" --target \
+ "$tbb_version_type")
+ local tbb_version_build=$("$rbm" showconf browser var/torbrowser_build \
+ --target "$SIGNING_PROJECTNAME" --target \
+ "$tbb_version_type")
+ for v in tbb_version_type tbb_version tbb_version_build; do
+ echo "$v=$(shell-quote "${!v}")" >> "$script_dir/set-config.generated-config"
+ done
}
function project-name {
- if test -n "${rbm_not_available+x}"; then
- echo "${SIGNING_PROJECTNAMES[0]}"
- else
- "$rbm" showconf browser var/project-name --target "$SIGNING_PROJECTNAME"
- fi
+ echo "${SIGNING_PROJECTNAMES[0]}"
}
function Project_Name {
- if test -n "${rbm_not_available+x}"; then
- echo "${SIGNING_PROJECTNAMES[1]}"
- else
- "$rbm" showconf browser var/Project_Name --target "$SIGNING_PROJECTNAME"
- fi
+ echo "${SIGNING_PROJECTNAMES[1]}"
}
function ProjectName {
- if test -n "${rbm_not_available+x}"; then
- echo "${SIGNING_PROJECTNAMES[2]}"
- else
- "$rbm" showconf browser var/ProjectName --target "$SIGNING_PROJECTNAME"
- fi
+ echo "${SIGNING_PROJECTNAMES[2]}"
}
function display_name {
- if test -n "${rbm_not_available+x}"; then
- echo "${SIGNING_PROJECTNAMES[3]}"
- else
- "$rbm" showconf browser var/display_name --target "$SIGNING_PROJECTNAME" --target "$tbb_version_type"
- fi
+ echo "${SIGNING_PROJECTNAMES[3]}"
}
=====================================
tools/signing/linux-signer-authenticode-signing
=====================================
@@ -1,6 +1,7 @@
#!/bin/bash
set -e
+no_generate_config=1
script_dir=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
source "$script_dir/functions"
=====================================
tools/signing/linux-signer-gpg-sign
=====================================
@@ -1,6 +1,7 @@
#!/bin/bash
set -e
+no_generate_config=1
script_dir=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
source "$script_dir/functions"
=====================================
tools/signing/linux-signer-rcodesign-sign
=====================================
@@ -1,9 +1,9 @@
#!/bin/bash
set -e
+no_generate_config=1
script_dir=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
source "$script_dir/functions"
-source "$script_dir/set-config.generated-config"
# tbb_version_type is used in wrappers/sign-rcodesign, so we export it
export tbb_version_type
=====================================
tools/signing/linux-signer-sign-android-apks
=====================================
@@ -1,9 +1,9 @@
#!/bin/bash
set -e
+no_generate_config=1
script_dir=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
source "$script_dir/functions"
-source "$script_dir/set-config.generated-config"
topdir="$script_dir/../.."
ARCHS="armv7 aarch64 x86 x86_64"
=====================================
tools/signing/linux-signer-signmars
=====================================
@@ -3,6 +3,7 @@
set -e
set -u
+no_generate_config=1
script_dir=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
source "$script_dir/functions"
=====================================
tools/signing/set-config
=====================================
@@ -20,9 +20,11 @@ test "$SIGNING_PROJECTNAME" = 'torbrowser' \
export SIGNING_PROJECTNAME
-test -z "${rbm_not_available+x}" && rbm="$script_dir/../../rbm/rbm"
+rbm="$script_dir/../../rbm/rbm"
-. "$script_dir/set-config.tbb-version"
+test -z "$no_generate_config" && generate_config
+. "$script_dir/set-config.generated-config"
+export no_generate_config=1
test "$tbb_version_type" = 'release' \
|| test "$tbb_version_type" = 'alpha' \
=====================================
tools/signing/set-config.tbb-version deleted
=====================================
@@ -1,7 +0,0 @@
-# The following 3 lines should be uncommented and updated:
-
-#tbb_version=11.5a4
-#tbb_version_build=1
-#tbb_version_type=alpha
-
-var_is_defined tbb_version tbb_version_build tbb_version_type
=====================================
tools/signing/upload-update_responses-to-staticiforme
=====================================
@@ -4,8 +4,6 @@ script_dir=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
source "$script_dir/functions"
source "$script_dir/set-config.update-responses"
-check_torbrowser_version_var
-
update_responses_tar_filename="update-responses-$tbb_version_type-$tbb_version.tar"
update_responses_tar="$script_dir/../../$SIGNING_PROJECTNAME/$tbb_version_type/update-responses/$update_responses_tar_filename"
test -f "$update_responses_tar" && \
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/compare/…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/compare/…
You're receiving this email because of your account on gitlab.torproject.org.
Dan Ballard pushed to branch tor-browser-128.8.0esr-14.5-1 at The Tor Project / Applications / Tor Browser
Commits:
d2b56be1 by clairehurst at 2025-03-10T19:25:21+00:00
fixup! TB 41089: Add tor-browser build scripts + Makefile to tor-browser
Update android-env-macos-template.sh
- - - - -
1 changed file:
- tools/geckoview/android-env-macos-template.sh
Changes:
=====================================
tools/geckoview/android-env-macos-template.sh
=====================================
@@ -1,6 +1,8 @@
-export JAVA_HOME=/opt/homebrew/opt/openjdk(a)11/libexec/openjdk.jdk/Contents/Home/ # for arm64. Or JAVA_HOME=/usr/local/opt/openjdk(a)11/libexec/openjdk.jdk/Contents/Home/ for x86_64.
+export JAVA_HOME=/opt/homebrew/opt/openjdk(a)17/libexec/openjdk.jdk/Contents/Home/ # for arm64. Or JAVA_HOME=/usr/local/opt/openjdk(a)17/libexec/openjdk.jdk/Contents/Home/ for x86_64.
export ANDROID_HOME=$HOME/Library/Android/sdk # or $HOME/.mozbuild/android-sdk-macosx/
-export ANDROID_NDK_HOME=$ANDROID_HOME/ndk/23.2.8568313 # will need to download NDK 23.2.8568313 via android studio
-export GRADLE_HOME=/opt/homebrew/Cellar/gradle(a)7/7.6.4 # for arm64 or /usr/local/Cellar/gradle(a)7/7.6.4 for x86_64. Make sure the version is up to date
+export ANDROID_NDK_HOME=$ANDROID_HOME/ndk/26.2.11394342 # will need to download the relevant NDK via android studio (e.g. 26.2.11394342)
+GRADLE_DIR=/opt/homebrew/Cellar/gradle # for arm64, or /usr/local/Cellar/gradle for x86_64. Download via homebrew.
+GRADLE_VERSION=`ls -1 "$GRADLE_DIR" | sort -hr | head -n 1` # Finds the latest gradle version in the specified GRADLE_DIR
+export GRADLE_HOME=$GRADLE_DIR/$GRADLE_VERSION
export LOCAL_DEV_BUILD=1
-export PATH=$ANDROID_HOME/ndk/25.2.9519653/toolchains/llvm/prebuilt/darwin-x86_64/bin/:$PATH # prepend android studios latest ndk to the path so it's clang gets used to build geckoview. NDK 25.2.9519653 uses clang 14.0.7, ideally we'd use clang 16 (to be the same as Linux) but that's not an option yet for android studio. NDK 26.1.10909125 uses clang 17.0.2, which we should evaluate with the esr128 migration
+export PATH=$ANDROID_HOME/ndk/26.2.11394342/toolchains/llvm/prebuilt/darwin-x86_64/bin/:$PATH # prepend android studios latest ndk to the path so it's clang gets used to build geckoview. Note that it doesn't need to be the same version as above
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/d2b56be…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/d2b56be…
You're receiving this email because of your account on gitlab.torproject.org.
Dan Ballard pushed to branch tor-browser-128.8.0esr-14.5-1 at The Tor Project / Applications / Tor Browser
Commits:
cbe2d643 by clairehurst at 2025-03-10T15:28:34+00:00
fixup! [android] Implement Android-native Connection Assist UI
tor-browser!43408 Add pref to load quickstartUI faster
- - - - -
2 changed files:
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/QuickstartViewModel.kt
- mobile/android/fenix/app/src/main/java/org/mozilla/fenix/utils/Settings.kt
Changes:
=====================================
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/tor/QuickstartViewModel.kt
=====================================
@@ -11,8 +11,9 @@ class QuickstartViewModel(
application: Application,
) : AndroidViewModel(application) {
+ private val components = getApplication<Application>().components
private val torIntegrationAndroid =
- (getApplication<Application>().components.core.engine as GeckoEngine).getTorIntegrationController()
+ (components.core.engine as GeckoEngine).getTorIntegrationController()
/**
* NOTE: Whilst the initial value for _quickstart is fetched from
@@ -25,10 +26,11 @@ class QuickstartViewModel(
init {
torIntegrationAndroid.quickstartGet {
_quickstart.value = it
+ components.settings.quickStart = it
}
}
- private val _quickstart = MutableLiveData<Boolean>()
+ private val _quickstart = MutableLiveData(components.settings.quickStart)
fun quickstart(): LiveData<Boolean> {
return _quickstart
}
@@ -36,6 +38,7 @@ class QuickstartViewModel(
fun quickstartSet(value: Boolean) {
torIntegrationAndroid.quickstartSet(value)
_quickstart.value = value
+ components.settings.quickStart = value
}
}
=====================================
mobile/android/fenix/app/src/main/java/org/mozilla/fenix/utils/Settings.kt
=====================================
@@ -2111,4 +2111,9 @@ class Settings(private val appContext: Context) : PreferencesHolder {
appContext.getPreferenceKey(R.string.pref_key_use_html_connection_ui),
default = false,
)
+
+ var quickStart by booleanPreference(
+ appContext.getPreferenceKey(R.string.pref_key_quick_start),
+ default = false,
+ )
}
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/cbe2d64…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/cbe2d64…
You're receiving this email because of your account on gitlab.torproject.org.
Pier Angelo Vendrame pushed to branch mullvad-browser-128.8.0esr-14.5-1 at The Tor Project / Applications / Mullvad Browser
Commits:
9492cb87 by Julian Descottes at 2025-03-06T10:46:29+01:00
Bug 1917556 - [marionette] Fix Mn tests with Python 3.12 r=webdriver-reviewers,whimboo
Differential Revision: https://phabricator.services.mozilla.com/D221448
- - - - -
29861015 by Beatriz Rizental at 2025-03-06T10:47:06+01:00
fixup! Base Browser's .mozconfigs.
- - - - -
63d64ecc by Beatriz Rizental at 2025-03-06T10:47:15+01:00
BB 43535: Enable tests
- - - - -
2aa78353 by John Lin at 2025-03-10T14:20:42+00:00
Bug 1924070 - modify H.264 extradata to match sample conversion code. r=media-playback-reviewers,alwu
In AVC stream, NAL unit is represented with the length of unit data
(NALUnitLength) followed by the actual unit data(NALUnit). The NALUnitLength
field can be 1-4 bytes long and the size can be derived from the
'lengthSizeMinusOne' value recorded in extradata.
H264ChangeMonitor.CheckForChange() reformats all input samples so that
NALUnitLength will always be 4 bytes long while the original extradata is
used during decoder creation earlier, so decoder won't be able to correctly
parse converted samples if extradata is not modified accordingly.
Differential Revision: https://phabricator.services.mozilla.com/D239547
- - - - -
6 changed files:
- dom/media/platforms/wrappers/MediaChangeMonitor.cpp
- mozconfig-linux-aarch64-dev
- mozconfig-linux-x86_64-dev
- mozconfig-macos-dev
- testing/marionette/harness/marionette_harness/runner/base.py
- testing/specialpowers/api.js
Changes:
=====================================
dom/media/platforms/wrappers/MediaChangeMonitor.cpp
=====================================
@@ -42,6 +42,14 @@ class H264ChangeMonitor : public MediaChangeMonitor::CodecChangeMonitor {
: mCurrentConfig(aInfo), mFullParsing(aFullParsing) {
if (CanBeInstantiated()) {
UpdateConfigFromExtraData(aInfo.mExtraData);
+ auto avcc = AVCCConfig::Parse(mCurrentConfig.mExtraData);
+ if (avcc.isOk() && avcc.unwrap().NALUSize() != 4) {
+ // `CheckForChange()` will use `AnnexB::ConvertSampleToAVCC()` to change
+ // NAL units into 4-byte.
+ // `AVCDecoderConfigurationRecord.lengthSizeMinusOne` in the config
+ // should be modified too.
+ mCurrentConfig.mExtraData->ReplaceElementAt(4, 0xfc | 3);
+ }
}
}
=====================================
mozconfig-linux-aarch64-dev
=====================================
@@ -16,3 +16,5 @@ ac_add_options --disable-install-strip
ac_add_options --with-base-browser-version=dev-build
ac_add_options --disable-base-browser-update
+
+ac_add_options --enable-tests
=====================================
mozconfig-linux-x86_64-dev
=====================================
@@ -19,3 +19,5 @@ ac_add_options --disable-base-browser-update
# Let's make sure no preference is enabling either Adobe's or Google's CDM.
ac_add_options --disable-eme
+
+ac_add_options --enable-tests
=====================================
mozconfig-macos-dev
=====================================
@@ -19,3 +19,5 @@ ac_add_options --disable-update-agent
# Let's make sure no preference is enabling either Adobe's or Google's CDM.
ac_add_options --disable-eme
+
+ac_add_options --enable-tests
=====================================
testing/marionette/harness/marionette_harness/runner/base.py
=====================================
@@ -222,7 +222,7 @@ class MarionetteTestResult(StructuredTestResult, TestResultCollection):
self.logger.info("END LOG:")
def stopTest(self, *args, **kwargs):
- unittest._TextTestResult.stopTest(self, *args, **kwargs)
+ unittest.TextTestResult.stopTest(self, *args, **kwargs)
if self.marionette.check_for_crash():
# this tells unittest.TestSuite not to continue running tests
self.shouldStop = True
=====================================
testing/specialpowers/api.js
=====================================
@@ -40,6 +40,18 @@ this.specialpowers = class extends ExtensionAPI {
uri,
resProto.ALLOW_CONTENT_ACCESS
);
+ } else {
+ // This is a hack!
+ // For some reason, this specific substituion has an extra `/` in the path.
+ // This is a workaround to fix it.
+ //
+ // TODO (#43545): Remove this once we have a proper fix.
+ let uri = resProto.getSubstitution("testing-common");
+ resProto.setSubstitution(
+ "testing-common",
+ Services.io.newURI(uri.spec.replace("file:////", "file:///")),
+ resProto.ALLOW_CONTENT_ACCESS
+ );
}
SpecialPowersParent.registerActor();
View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/compare/cb…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/mullvad-browser/-/compare/cb…
You're receiving this email because of your account on gitlab.torproject.org.
morgan pushed to branch base-browser-128.8.0esr-14.5-1 at The Tor Project / Applications / Tor Browser
Commits:
2aa78353 by John Lin at 2025-03-10T14:20:42+00:00
Bug 1924070 - modify H.264 extradata to match sample conversion code. r=media-playback-reviewers,alwu
In AVC stream, NAL unit is represented with the length of unit data
(NALUnitLength) followed by the actual unit data(NALUnit). The NALUnitLength
field can be 1-4 bytes long and the size can be derived from the
'lengthSizeMinusOne' value recorded in extradata.
H264ChangeMonitor.CheckForChange() reformats all input samples so that
NALUnitLength will always be 4 bytes long while the original extradata is
used during decoder creation earlier, so decoder won't be able to correctly
parse converted samples if extradata is not modified accordingly.
Differential Revision: https://phabricator.services.mozilla.com/D239547
- - - - -
1 changed file:
- dom/media/platforms/wrappers/MediaChangeMonitor.cpp
Changes:
=====================================
dom/media/platforms/wrappers/MediaChangeMonitor.cpp
=====================================
@@ -42,6 +42,14 @@ class H264ChangeMonitor : public MediaChangeMonitor::CodecChangeMonitor {
: mCurrentConfig(aInfo), mFullParsing(aFullParsing) {
if (CanBeInstantiated()) {
UpdateConfigFromExtraData(aInfo.mExtraData);
+ auto avcc = AVCCConfig::Parse(mCurrentConfig.mExtraData);
+ if (avcc.isOk() && avcc.unwrap().NALUSize() != 4) {
+ // `CheckForChange()` will use `AnnexB::ConvertSampleToAVCC()` to change
+ // NAL units into 4-byte.
+ // `AVCDecoderConfigurationRecord.lengthSizeMinusOne` in the config
+ // should be modified too.
+ mCurrentConfig.mExtraData->ReplaceElementAt(4, 0xfc | 3);
+ }
}
}
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/2aa7835…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/2aa7835…
You're receiving this email because of your account on gitlab.torproject.org.
morgan pushed to branch tor-browser-128.8.0esr-14.5-1 at The Tor Project / Applications / Tor Browser
Commits:
4224ae27 by John Lin at 2025-03-10T15:04:22+01:00
Bug 1924070 - modify H.264 extradata to match sample conversion code. r=media-playback-reviewers,alwu
In AVC stream, NAL unit is represented with the length of unit data
(NALUnitLength) followed by the actual unit data(NALUnit). The NALUnitLength
field can be 1-4 bytes long and the size can be derived from the
'lengthSizeMinusOne' value recorded in extradata.
H264ChangeMonitor.CheckForChange() reformats all input samples so that
NALUnitLength will always be 4 bytes long while the original extradata is
used during decoder creation earlier, so decoder won't be able to correctly
parse converted samples if extradata is not modified accordingly.
Differential Revision: https://phabricator.services.mozilla.com/D239547
- - - - -
1 changed file:
- dom/media/platforms/wrappers/MediaChangeMonitor.cpp
Changes:
=====================================
dom/media/platforms/wrappers/MediaChangeMonitor.cpp
=====================================
@@ -42,6 +42,14 @@ class H264ChangeMonitor : public MediaChangeMonitor::CodecChangeMonitor {
: mCurrentConfig(aInfo), mFullParsing(aFullParsing) {
if (CanBeInstantiated()) {
UpdateConfigFromExtraData(aInfo.mExtraData);
+ auto avcc = AVCCConfig::Parse(mCurrentConfig.mExtraData);
+ if (avcc.isOk() && avcc.unwrap().NALUSize() != 4) {
+ // `CheckForChange()` will use `AnnexB::ConvertSampleToAVCC()` to change
+ // NAL units into 4-byte.
+ // `AVCDecoderConfigurationRecord.lengthSizeMinusOne` in the config
+ // should be modified too.
+ mCurrentConfig.mExtraData->ReplaceElementAt(4, 0xfc | 3);
+ }
}
}
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/4224ae2…
--
View it on GitLab: https://gitlab.torproject.org/tpo/applications/tor-browser/-/commit/4224ae2…
You're receiving this email because of your account on gitlab.torproject.org.