summaryrefslogtreecommitdiffstats
path: root/src/worker.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/worker.rs')
-rw-r--r--src/worker.rs9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/worker.rs b/src/worker.rs
index 5b7ef0a4..8e840400 100644
--- a/src/worker.rs
+++ b/src/worker.rs
@@ -8,7 +8,8 @@ use ignore::DirEntry;
use memmap::Mmap;
use termcolor::WriteColor;
-use decoder::DecodeReader;
+// use decoder::DecodeReader;
+use encoding_rs_io::DecodeReaderBytesBuilder;
use decompressor::{self, DecompressionReader};
use preprocessor::PreprocessorReader;
use pathutil::strip_prefix;
@@ -319,8 +320,10 @@ impl Worker {
path: &Path,
rdr: R,
) -> Result<u64> {
- let rdr = DecodeReader::new(
- rdr, &mut self.decodebuf, self.opts.encoding);
+ let rdr = DecodeReaderBytesBuilder::new()
+ .encoding(self.opts.encoding)
+ .utf8_passthru(true)
+ .build_with_buffer(rdr, &mut self.decodebuf)?;
let searcher = Searcher::new(
&mut self.inpbuf, printer, &self.grep, path, rdr);
searcher