diff options
Diffstat (limited to 'cli/src')
| -rw-r--r-- | cli/src/main.rs | 8 |
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() |
