fix(desktop): never queue local proxy requests (#3421)

This commit is contained in:
Hampus authored and GitHub committed 2026-10-12 15:39:30 +02:00
1 parent 68cb2a4bbb
commit ab19c0d1ac
8 files changed
+86 -505

No files matched your search

@@ -1,6 +1,6 @@
// SPDX-License-Identifier: AGPL-3.0-or-later
import {STABLE_APP_URL} from '@electron/common/Constants';
import {DESKTOP_APP_SCHEME, STABLE_APP_URL} from '@electron/common/Constants';
import {isPlainRecord} from '@electron/common/PlainRecord';
const SUB_FRAME_RESOURCE_TYPE = 'subFrame';
@@ -9,6 +9,10 @@ const REFERER_REQUEST_HEADER = 'Referer';
const REFERER_HEADER_NAME_LOWERCASE = 'referer';
const YOUTUBE_EMBED_FRAME_ORIGIN = 'https://www.youtube.com';
const YOUTUBE_EMBED_FRAME_PATH_PREFIX = '/embed/';
const DESKTOP_RUNTIME_SECURITY_REQUEST_URL_PATTERNS = [
`${DESKTOP_APP_SCHEME}://*/*`,
`${YOUTUBE_EMBED_FRAME_ORIGIN}${YOUTUBE_EMBED_FRAME_PATH_PREFIX}*`,
];
interface DesktopRuntimeSecurityLogger {
error: (...args: Array<unknown>) => void;
@@ -62,9 +66,12 @@ export class DesktopRuntimeSecurity {
}
this.installedSessions.add(session);
try {
session.webRequest.onBeforeSendHeaders((details: unknown, callback: unknown) => {
this.settleRequestHeaders(details, callback);
});
session.webRequest.onBeforeSendHeaders(
{urls: DESKTOP_RUNTIME_SECURITY_REQUEST_URL_PATTERNS},
(details: unknown, callback: unknown) => {
this.settleRequestHeaders(details, callback);
},
);
} catch (installationError) {
this.uninstall(session);
throw installationError;