From: Ian Jackson Date: Sun, 12 Jul 2020 12:04:30 +0000 (+0100) Subject: parse float X-Git-Tag: otter-0.2.0~1362 X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=commitdiff_plain;h=0afde52a4798491ecc97c3f10a543c4661dd81b9;p=otter.git parse float --- diff --git a/src/pieces.rs b/src/pieces.rs index 42db5809..1131db66 100644 --- a/src/pieces.rs +++ b/src/pieces.rs @@ -24,6 +24,7 @@ pub enum SVGProcessError { } display_as_debug!{SVGProcessError} error_from_losedetails!{SVGProcessError, WriteFail, fmt::Error} +error_from_losedetails!{SVGProcessError, BadNumber, std::num::ParseFloatError} #[throws(SVGProcessError)] pub fn svg_rescale_path(input: &str, scale: f64) -> String { @@ -59,7 +60,7 @@ pub fn svg_rescale_path(input: &str, scale: f64) -> String { "z" => map.reset(), v if v.starts_with(|s:char| s=='-' || s=='.' || s.is_ascii_digit()) => { if map.next() { - let v : f64 = v.parse().map_err(|_| BadNumber)?; + let v : f64 = v.parse()?; write!(&mut out, "{} ", v * scale)?; continue; }