summaryrefslogtreecommitdiff
path: root/cli/src
diff options
context:
space:
mode:
Diffstat (limited to 'cli/src')
-rw-r--r--cli/src/main.rs8
1 files changed, 7 insertions, 1 deletions
diff --git a/cli/src/main.rs b/cli/src/main.rs
index 9b771163..09ba0515 100644
--- a/cli/src/main.rs
+++ b/cli/src/main.rs
@@ -557,7 +557,13 @@ impl World for SystemWorld {
.source
.get_or_init(|| {
let buf = read(path)?;
- let text = String::from_utf8(buf)?;
+ let text = if buf.starts_with(b"\xef\xbb\xbf") {
+ // remove UTF-8 BOM
+ std::str::from_utf8(&buf[3..])?.to_owned()
+ } else {
+ // Assume UTF-8
+ String::from_utf8(buf)?
+ };
Ok(self.insert(path, text))
})
.clone()