From 0dacb2d151e1790613b324b3051b8ce7aa26a90e Mon Sep 17 00:00:00 2001 From: Laurenz Date: Tue, 14 Jun 2022 18:18:18 +0200 Subject: [PATCH] Fix error messages on Windows --- src/loading/fs.rs | 5 ++--- tests/typeset.rs | 6 +++++- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/src/loading/fs.rs b/src/loading/fs.rs index 23b67e34d..c1576e86d 100644 --- a/src/loading/fs.rs +++ b/src/loading/fs.rs @@ -121,10 +121,9 @@ impl Loader for FsLoader { } fn resolve(&self, path: &Path) -> io::Result { - let file = File::open(path)?; - let meta = file.metadata()?; + let meta = fs::metadata(path)?; if meta.is_file() { - let handle = Handle::from_file(file)?; + let handle = Handle::from_path(path)?; Ok(FileHash(fxhash::hash64(&handle))) } else { Err(io::ErrorKind::NotFound.into()) diff --git a/tests/typeset.rs b/tests/typeset.rs index c88d93237..06641fff1 100644 --- a/tests/typeset.rs +++ b/tests/typeset.rs @@ -316,7 +316,11 @@ fn test_part( let mut errors: Vec<_> = errors .into_iter() .filter(|error| error.span.source() == id) - .map(|error| (ctx.sources.range(error.span), error.message)) + .map(|error| { + let range = ctx.sources.range(error.span); + let msg = error.message.replace("\\", "/"); + (range, msg) + }) .collect(); errors.sort_by_key(|error| error.0.start);