From f329f9e40d6e760c74c0ef07ce38aef228e11136 Mon Sep 17 00:00:00 2001 From: liuhao1024 Date: Mon, 17 Aug 2026 20:47:56 +0800 Subject: [PATCH] fix(desktop-update): never render the posix update shim in Edge MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Edge's OS-level Microsoft-account integration signs even a fresh throwaway profile into the user's MSA and renders its own "syncing your browsing data" notification — the user's MSA email included — inside the update window, which is titled "Hermes" (#88410). The throwaway --user-data-dir start_ui already passes cannot block that OS-account path, so the only reliable protection is to not pick Edge at all: drop it from the browser candidates on both macOS and Linux. The update UI is a best-effort layer — with no other Chromium-family browser installed, start_ui falls back to its existing "no renderer; skipping UI" path and the update itself is unaffected. Fixes #88410 --- scripts/desktop-update/posix.sh | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/scripts/desktop-update/posix.sh b/scripts/desktop-update/posix.sh index 78cdf4444d..be29e2fce2 100755 --- a/scripts/desktop-update/posix.sh +++ b/scripts/desktop-update/posix.sh @@ -171,15 +171,20 @@ publish() { # terminal event -- the page must render it before teardown find_browser() { local c + # No Microsoft Edge, on purpose: Edge's OS-level Microsoft-account + # integration signs a fresh throwaway profile into the user's MSA and + # renders its own "syncing your data" notification — MSA email included — + # inside this window that is titled "Hermes" (#88410). The throwaway + # --user-data-dir below cannot block it; the other Chromium-family + # browsers carry no OS account integration into a fresh profile. if [ "$(uname)" = "Darwin" ]; then for c in "/Applications/Google Chrome.app/Contents/MacOS/Google Chrome" \ - "/Applications/Microsoft Edge.app/Contents/MacOS/Microsoft Edge" \ "/Applications/Chromium.app/Contents/MacOS/Chromium" \ "/Applications/Brave Browser.app/Contents/MacOS/Brave Browser"; do [ -x "$c" ] && { echo "$c"; return; } done else - for c in google-chrome google-chrome-stable chromium chromium-browser microsoft-edge brave-browser; do + for c in google-chrome google-chrome-stable chromium chromium-browser brave-browser; do command -v "$c" 2>/dev/null && return done fi