From 970abcd18cdff1c657cde7147750766782360eb9 Mon Sep 17 00:00:00 2001 From: euzu Date: Tue, 26 Mar 2024 11:01:59 +0100 Subject: [PATCH] guessing group extra loop removed --- src/processing/m3u_parser.rs | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/src/processing/m3u_parser.rs b/src/processing/m3u_parser.rs index 0a1dbab7f..9882151d1 100644 --- a/src/processing/m3u_parser.rs +++ b/src/processing/m3u_parser.rs @@ -175,9 +175,12 @@ pub(crate) fn parse_m3u(cfg: &Config, lines: &Vec) -> Vec } if let Some(header_value) = header { let item = PlaylistItem { header: RefCell::new(process_header(&video_suffixes, &header_value, String::from(line))) }; - if let Some(group_value) = group { - if item.header.borrow().group.is_empty() { + if item.header.borrow().group.is_empty() { + if let Some(group_value) = group { item.header.borrow_mut().group = Rc::new(group_value); + } else { + let current_title = item.header.borrow().title.to_owned(); + item.header.borrow_mut().group = Rc::new(string_utils::get_title_group(current_title.as_str())); } } playlist.push(item); @@ -186,13 +189,6 @@ pub(crate) fn parse_m3u(cfg: &Config, lines: &Vec) -> Vec group = None; } - for item in &playlist { - if item.header.borrow().group.is_empty() { - let current_title = item.header.borrow().title.to_owned(); - item.header.borrow_mut().group = Rc::new(string_utils::get_title_group(current_title.as_str())); - } - } - playlist.drain(..).for_each(|item| { let key = Rc::clone(&item.header.borrow().group); // let key2 = String::from(&item.header.group);