mirror of
https://github.com/euzu/tuliprox.git
synced 2026-10-23 08:12:34 +02:00
Fix: Mapper counter reset (#795)
Bug Fixes Fixed playlist counter assignments so values reset correctly during each refresh. Corrected counter displays to consistently show their configured starting values. Improved counter comparisons to detect changes in starting values accurately.
This commit is contained in:
@@ -323,11 +323,14 @@ fn map_playlist_counter(target: &ConfigTarget, playlist: &mut [PlaylistGroup]) {
|
||||
for mapping in mappings {
|
||||
if let Some(counter_list) = &mapping.t_counter {
|
||||
for counter in counter_list {
|
||||
// fresh per target/call. No shared atomic, no cross-refresh carry-over.
|
||||
let mut current = counter.start;
|
||||
for plg in &mut *playlist {
|
||||
for channel in &mut plg.channels {
|
||||
let provider = ValueProvider { pli: channel, match_as_ascii: mapping.match_as_ascii };
|
||||
if counter.filter.filter(&provider) {
|
||||
let cntval = counter.value.fetch_add(1, core::sync::atomic::Ordering::AcqRel);
|
||||
let cntval = current;
|
||||
current += 1;
|
||||
let padded_cntval = if counter.padding > 0 {
|
||||
format!("{:0width$}", cntval, width = counter.padding as usize)
|
||||
} else {
|
||||
|
||||
Reference in New Issue
Block a user