From: Ian Jackson Date: Sun, 21 Mar 2021 22:13:45 +0000 (+0000) Subject: shapelib: Allow FaceTransform::from_group to throw X-Git-Tag: otter-0.5.0~542 X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=commitdiff_plain;h=fdd2085527641191a6af0f93a257525d7e95a6fb;p=otter.git shapelib: Allow FaceTransform::from_group to throw Signed-off-by: Ian Jackson --- diff --git a/src/shapelib.rs b/src/shapelib.rs index 708d48a9..dee0c057 100644 --- a/src/shapelib.rs +++ b/src/shapelib.rs @@ -194,6 +194,7 @@ impl OutlineTrait for Item { delegate! { to self.outline { }}} impl FaceTransform { + #[throws(LLE)] fn from_group(d: &GroupDetails) -> Self { let centre = d.centre; let scale = d.scale; @@ -323,7 +324,8 @@ impl Contents { let desc = descs.push(idata.d.desc.clone()); descs.shrink_to_fit(); - let xform = FaceTransform::from_group(&idata.group.d); + let xform = FaceTransform::from_group(&idata.group.d) + .map_err(|e| SpE::InternalError(format!("reckoning transform: {}",&e)))?; let mut face = ItemFace { svg, desc, xform }; let mut faces = index_vec![ face ]; if idata.group.d.flip { @@ -485,7 +487,7 @@ fn load_catalogue(libname: &str, dirname: &str, toml_path: &str) -> Contents { item_name: Arc::new(subst(&item_name, "_c", &colour)?), desc: Html(subst(&fe.desc.0, "_colour", "")?), outline: outline.clone(), - xform: FaceTransform::from_group(&group.d), + xform: FaceTransform::from_group(&group.d)?, svgd: default(), })) },