From dc36fd38d6152e30757d23f2c375ab4f986a57da Mon Sep 17 00:00:00 2001 From: Erick Tryzelaar Date: Sun, 9 Aug 2015 16:45:55 -0700 Subject: [PATCH] Gain back 10MB/s on the json deserialization benchmark --- serde_json/src/de.rs | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/serde_json/src/de.rs b/serde_json/src/de.rs index c66b5007..6940f94f 100644 --- a/serde_json/src/de.rs +++ b/serde_json/src/de.rs @@ -54,8 +54,14 @@ impl Deserializer match self.ch { Some(ch) => Ok(Some(ch)), None => { - self.ch = try!(self.next_char()); - Ok(self.ch) + match self.rdr.next() { + Some(Err(err)) => Err(Error::IoError(err)), + Some(Ok(ch)) => { + self.ch = Some(ch); + Ok(self.ch) + } + None => Ok(None), + } } } }