mirror of
https://github.com/microsoft/vscode.git
synced 2026-04-23 10:08:49 +01:00
timeout for provideDebugAdapterTracker; fixes #59408
This commit is contained in:
@@ -611,11 +611,22 @@ export class ExtHostDebugService implements ExtHostDebugServiceShape {
|
||||
.filter(pair => pair.provider.provideDebugAdapterTracker && (pair.type === type || pair.type === '*'))
|
||||
.map(pair => asThenable(() => pair.provider.provideDebugAdapterTracker(session, folder, config, CancellationToken.None)).then(p => p).catch(err => null));
|
||||
|
||||
return Promise.all(promises).then(trackers => {
|
||||
trackers = trackers.filter(t => t); // filter null
|
||||
if (trackers.length > 0) {
|
||||
return new MultiTracker(trackers);
|
||||
}
|
||||
return Promise.race([
|
||||
Promise.all(promises).then(trackers => {
|
||||
trackers = trackers.filter(t => t); // filter null
|
||||
if (trackers.length > 0) {
|
||||
return new MultiTracker(trackers);
|
||||
}
|
||||
return undefined;
|
||||
}),
|
||||
new Promise((resolve, reject) => {
|
||||
const timeout = setTimeout(() => {
|
||||
clearTimeout(timeout);
|
||||
reject(new Error('timeout'));
|
||||
}, 1000);
|
||||
})
|
||||
]).catch(err => {
|
||||
// ignore errors
|
||||
return undefined;
|
||||
});
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user