diff options
| author | Aaron Hill <aa1ronham@gmail.com> | 2019-10-28 22:23:41 -0400 |
|---|---|---|
| committer | Aaron Hill <aa1ronham@gmail.com> | 2019-11-11 15:14:34 -0500 |
| commit | 8ff4d41ba486db16446a70ef94a3d58285880358 (patch) | |
| tree | 2e5ca5c0c7230a2af110c3259d4a558beb44adb0 /src/libstd | |
| parent | 4f25c91a0530d2337bff2b27c938e458a95e943b (diff) | |
| download | rust-8ff4d41ba486db16446a70ef94a3d58285880358.tar.gz rust-8ff4d41ba486db16446a70ef94a3d58285880358.zip | |
Don't attempt to get cwd when printing backtrace under Miri
This allows Miri to print backtraces in isolation mode
Diffstat (limited to 'src/libstd')
| -rw-r--r-- | src/libstd/sys_common/backtrace.rs | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/libstd/sys_common/backtrace.rs b/src/libstd/sys_common/backtrace.rs index 9c406ec39cc..d7296b43fbe 100644 --- a/src/libstd/sys_common/backtrace.rs +++ b/src/libstd/sys_common/backtrace.rs @@ -66,7 +66,14 @@ unsafe fn _print(w: &mut dyn Write, format: PrintFmt) -> io::Result<()> { } unsafe fn _print_fmt(fmt: &mut fmt::Formatter<'_>, print_fmt: PrintFmt) -> fmt::Result { - let cwd = env::current_dir().ok(); + // Always 'fail' to get the cwd when running under Miri - + // this allows Miri to display backtraces in isolation mode + let cwd = if !cfg!(miri) { + env::current_dir().ok() + } else { + None + }; + let mut print_path = move |fmt: &mut fmt::Formatter<'_>, bows: BytesOrWideString<'_>| { output_filename(fmt, bows, print_fmt, cwd.as_ref()) }; |
