diff --git a/backend/src/processing/parser/xmltv.rs b/backend/src/processing/parser/xmltv.rs index e9c32eb9c..2e060452c 100644 --- a/backend/src/processing/parser/xmltv.rs +++ b/backend/src/processing/parser/xmltv.rs @@ -392,9 +392,7 @@ where } else if !stack.is_empty() { let tag_arc = Arc::new(tag); if let Some(mut parent) = stack.pop() { - let mut children = parent.children.take().unwrap_or_default(); - children.push(tag_arc); - parent.children = Some(children); + parent.children.get_or_insert_with(Vec::new).push(tag_arc); stack.push(parent); } }