rust/rhg/src/main.rs
changeset 49477 f3cd2d6eeef9
parent 49195 411d591e0a27
child 49481 a0d189b2e871
--- a/rust/rhg/src/main.rs	Fri May 20 11:02:52 2022 +0100
+++ b/rust/rhg/src/main.rs	Mon Jul 11 17:27:39 2022 +0200
@@ -687,13 +687,18 @@
     }
 
     let enabled: HashSet<&[u8]> = config
-        .get_section_keys(b"extensions")
-        .into_iter()
-        .map(|extension| {
+        .iter_section(b"extensions")
+        .filter_map(|(extension, value)| {
+            if value == b"!" {
+                // Filter out disabled extensions
+                return None;
+            }
             // Ignore extension suboptions. Only `required` exists for now.
             // `rhg` either supports an extension or doesn't, so it doesn't
             // make sense to consider the loading of an extension.
-            extension.split_2(b':').unwrap_or((extension, b"")).0
+            let actual_extension =
+                extension.split_2(b':').unwrap_or((extension, b"")).0;
+            Some(actual_extension)
         })
         .collect();