chiark / gitweb /
bundles: Parse size: Small refactoring
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Sat, 22 May 2021 21:16:16 +0000 (22:16 +0100)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Sat, 22 May 2021 21:21:44 +0000 (22:21 +0100)
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
src/bundles.rs

index dd2bd8f0edc6944ba7bc48eb19126560582968a7..ceb2929a6070d8c2302801cc35700aef0c7ae266 100644 (file)
@@ -787,11 +787,12 @@ fn usvg_size(f: &mut BufReader<File>) -> [f64;2] {
           value.parse().context("parse width/height")?
         );
 
-        if_chain!{
-          if let Some(width)  = size[0];
-          if let Some(height) = size[1];
-          then { break [width,height] }
-        }
+        if let Ok(output) = size.iter().cloned()
+          .filter_map(|s|s)
+          .collect::<ArrayVec<_,2>>()
+          .into_inner() {
+            break output;
+          }
       },
       XT::ElementEnd {..} => throw!(anyhow!("not found")),
       _ => { }