mirror of
https://github.com/Microsoft/vscode
synced 2024-10-01 08:50:48 +00:00
Ignore unloadable PDBs (#194731)
This commit is contained in:
parent
a792dff3a9
commit
187fa0eff0
|
@ -50,6 +50,7 @@ stages:
|
|||
inputs:
|
||||
scanFolder: "$(Build.SourcesDirectory)"
|
||||
outputFormat: "pre"
|
||||
|
||||
- task: NodeTool@0
|
||||
inputs:
|
||||
versionSource: fromFile
|
||||
|
@ -148,6 +149,7 @@ stages:
|
|||
InputType: "Basic"
|
||||
Function: "analyze"
|
||||
TargetPattern: "guardianGlob"
|
||||
AnalyzeIgnorePdbLoadError: true
|
||||
AnalyzeTargetGlob: '$(agent.builddirectory)\scanbin\**.dll;$(agent.builddirectory)\scanbin\**.exe;$(agent.builddirectory)\scanbin\**.node'
|
||||
AnalyzeLocalSymbolDirectories: '$(agent.builddirectory)\scanbin\VSCode-win32-$(VSCODE_ARCH)\pdb'
|
||||
|
||||
|
|
|
@ -13,6 +13,7 @@ const electron = require('@vscode/gulp-electron');
|
|||
const { config } = require('./lib/electron');
|
||||
const filter = require('gulp-filter');
|
||||
const deps = require('./lib/dependencies');
|
||||
const { existsSync, readdirSync } = require('fs');
|
||||
|
||||
const root = path.dirname(__dirname);
|
||||
|
||||
|
@ -46,8 +47,9 @@ BUILD_TARGETS.forEach(buildTarget => {
|
|||
if (platform === 'win32') {
|
||||
tasks.push(
|
||||
() => electron.dest(destinationPdb, { ...config, platform, arch: arch === 'armhf' ? 'arm' : arch, pdbs: true }),
|
||||
util.rimraf(path.join(destinationExe, 'swiftshader')),
|
||||
util.rimraf(path.join(destinationExe, 'd3dcompiler_47.dll')));
|
||||
util.rimraf(path.join(destinationExe, 'd3dcompiler_47.dll')),
|
||||
() => confirmPdbsExist(destinationExe, destinationPdb)
|
||||
);
|
||||
}
|
||||
|
||||
if (platform === 'linux') {
|
||||
|
@ -106,3 +108,15 @@ function nodeModules(destinationExe, destinationPdb, platform) {
|
|||
|
||||
return exe;
|
||||
}
|
||||
|
||||
function confirmPdbsExist(destinationExe, destinationPdb) {
|
||||
readdirSync(destinationExe).forEach(file => {
|
||||
if (file.endsWith('.dll') || file.endsWith('.exe')) {
|
||||
const pdb = `${file}.pdb`;
|
||||
if (!existsSync(path.join(destinationPdb, pdb))) {
|
||||
throw new Error(`Missing pdb file for ${file}. Tried searching for ${pdb} in ${destinationPdb}.`);
|
||||
}
|
||||
}
|
||||
});
|
||||
return Promise.resolve();
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue