disable sympath unless it's set via target_env (#222)

This commit is contained in:
bmc-msft 2020-10-28 16:43:00 -04:00 committed by GitHub
parent 640091f8bc
commit 36bae9e649
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 14 additions and 4 deletions

View File

@ -128,10 +128,13 @@ impl CoverageRecorder {
.join("libfuzzer-coverage")
.join("DumpCounters.js");
let should_disable_sympath = !self.config.target_env.contains_key("_NT_SYMBOL_PATH");
let cdb_cmd = format!(
".scriptload {}; !dumpcounters {:?}; q",
".scriptload {}; !dumpcounters {:?}, {}; q",
script_path.to_string_lossy(),
output.to_string_lossy()
output.to_string_lossy(),
should_disable_sympath,
);
let mut cmd = Command::new("cdb.exe");

View File

@ -83,7 +83,14 @@ function processModule(module, results_dir) {
return true;
}
function dumpCounters(results_dir, sample_name) {
function dumpCounters(results_dir, should_disable_sympath) {
if (should_disable_sympath == true) {
logln(`disabling sympath`);
execute('.sympath ""');
} else {
logln(`not disabling sympath`);
}
// Reset to initial break in `ntdll!LdrpDoDebuggerBreak`.
execute(".restart");
@ -95,7 +102,7 @@ function dumpCounters(results_dir, sample_name) {
let found = false;
host.currentProcess.Modules.All(function (module) {
let result = processModule(module, results_dir, sample_name);
let result = processModule(module, results_dir);
if (result) {
found = true;
}