chiark / gitweb /
shapelib subst: Prepare for substituting more into magic
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Sun, 15 May 2022 15:37:59 +0000 (16:37 +0100)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Sun, 15 May 2022 20:41:22 +0000 (21:41 +0100)
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
src/shapelib.rs

index 0d80ff8147d498e0ae0e55926959624f09f5aee1..f4adef5a1f0589075f8e0b41a3fb2fd83345fe33 100644 (file)
@@ -1442,10 +1442,10 @@ fn process_files_entry(
       let spec = Substituting::new(mformat, Dollars::Text, &magic.template);
       let spec = substn(spec, "${image}", &image_table)?;
       let mut spec = c_colour_all(spec.into())?.is_y()?;
-      for (k,v) in &fe.extra_fields {
-        if k.starts_with('x') {
-          spec = substn(spec, format!("${{{}}}", k), v)?;
-        }
+      for (k,v) in chain!{
+        fe.extra_fields.iter().filter(|(k,_v)| k.starts_with('x')),
+      } {
+        spec = substn(spec, format!("${{{}}}", k), v)?;
       }
       let spec = spec.finish()?;
       trace!("magic item {}\n\n{}\n", &item_name, &spec);