Keep originals and resolveProxyURL (#228697)

This commit is contained in:
Christof Marti
2024-11-29 13:06:08 +01:00
parent 9fa0171d10
commit 09f117fcd9
+6 -1
View File
@@ -19,6 +19,7 @@ import type * as undiciType from 'undici-types';
import type * as tlsType from 'tls';
import type * as streamType from 'stream';
import { lookupKerberosAuthorization } from '../../../platform/request/node/requestService.js';
import * as proxyAgent from '@vscode/proxy-agent';
const require = createRequire(import.meta.url);
const http = require('http');
@@ -90,6 +91,8 @@ export function connectProxyResolver(
env: process.env,
};
const { resolveProxyWithRequest, resolveProxyURL } = createProxyResolver(params);
const target = (proxyAgent as any).default || proxyAgent;
target.resolveProxyURL = resolveProxyURL;
patchGlobalFetch(configProvider, mainThreadTelemetry, initData, resolveProxyURL, params.lookupProxyAuthorization!, getOrLoadAdditionalCertificates.bind(undefined, params), disposables);
@@ -348,7 +351,9 @@ function recordFetchFeatureUse(mainThreadTelemetry: MainThreadTelemetryShape, fe
function createPatchedModules(params: ProxyAgentParams, resolveProxy: ResolveProxyWithRequest) {
function mergeModules(module: any, patch: any) {
return Object.assign(module.default || module, patch);
const target = module.default || module;
target.__vscodeOriginal = Object.assign({}, target);
return Object.assign(target, patch);
}
return {