From f8c68ecdb480a1d7e5c587a97f95747c6e74d155 Mon Sep 17 00:00:00 2001 From: Jaroslav Kysela Date: Wed, 14 Mar 2018 13:43:27 +0100 Subject: [PATCH] satip client: fix the switch to 'all' subcribed pids when max pids number is crossed, fixes #5002 --- src/input/mpegts/satip/satip_frontend.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/input/mpegts/satip/satip_frontend.c b/src/input/mpegts/satip/satip_frontend.c index 706ae0941..861aa2612 100644 --- a/src/input/mpegts/satip/satip_frontend.c +++ b/src/input/mpegts/satip/satip_frontend.c @@ -1065,7 +1065,7 @@ satip_frontend_pid_changed( http_client_t *rtsp, satip_tune_req_t *tr; satip_device_t *sd = lfe->sf_device; char *setup = NULL, *add = NULL, *del = NULL; - int i, j, r, pid; + int i, j, r, pid, overlimit; int max_pids_len = sd->sd_pids_len; int max_pids_count = sd->sd_pids_max; mpegts_apids_t wpid, padd, pdel; @@ -1094,9 +1094,9 @@ all: tr->sf_pids_tuned.all || tr->sf_pids.count == 0) { - mpegts_pid_weighted(&wpid, &tr->sf_pids, max_pids_count); + overlimit = mpegts_pid_weighted(&wpid, &tr->sf_pids, max_pids_count); - if (wpid.count > max_pids_count && sd->sd_fullmux_ok) { + if (overlimit > 0 && sd->sd_fullmux_ok) { mpegts_pid_done(&wpid); goto all; } -- 2.47.2