aboutsummaryrefslogtreecommitdiff
path: root/src/de.rs
diff options
context:
space:
mode:
authorAlex Crichton <alex@alexcrichton.com>2017-05-30 19:37:44 -0500
committerGitHub <noreply@github.com>2017-05-30 19:37:44 -0500
commit95e1c738467c87f4072ac29923e7df399ebfe9ea (patch)
tree0dc8202f51434c0179ea6cf9ea404caecb570741 /src/de.rs
parentdfe67d6c60ab96e80d02747f60d0635acc67f718 (diff)
parent2a6b365f7c931feb5e870d54c6d4a02e8aee75bf (diff)
downloadmilf-rs-95e1c738467c87f4072ac29923e7df399ebfe9ea.tar.gz
milf-rs-95e1c738467c87f4072ac29923e7df399ebfe9ea.zip
Merge pull request #183 from alanhdu/invalid_number
Better invalid number handling
Diffstat (limited to 'src/de.rs')
-rw-r--r--src/de.rs6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/de.rs b/src/de.rs
index bd4ead0..d5af272 100644
--- a/src/de.rs
+++ b/src/de.rs
@@ -893,6 +893,12 @@ impl<'a> Deserializer<'a> {
}
number.parse().map_err(|_e| {
self.error(start, ErrorKind::NumberInvalid)
+ }).and_then(|n: f64| {
+ if n.is_finite() {
+ Ok(n)
+ } else {
+ Err(self.error(start, ErrorKind::NumberInvalid))
+ }
})
}