From 1dd5046aba0fa6425ccfe1774a80c9119e691db2 Mon Sep 17 00:00:00 2001 From: Jaroslav Kysela Date: Tue, 26 Apr 2016 08:38:05 +0200 Subject: [PATCH] mpegts service: fix enlist callback for raw (SAT>IP, scan) services, fixes #3746 --- src/input/mpegts/mpegts_service.c | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/src/input/mpegts/mpegts_service.c b/src/input/mpegts/mpegts_service.c index 704369ee8..8ff8f77f6 100644 --- a/src/input/mpegts/mpegts_service.c +++ b/src/input/mpegts/mpegts_service.c @@ -281,7 +281,7 @@ mpegts_service_config_save ( service_t *t, char *filename, size_t fsize ) * Service instance list */ static int -mpegts_service_enlist +mpegts_service_enlist_raw ( service_t *t, tvh_input_t *ti, struct service_instance_list *sil, int flags, int weight ) { @@ -330,6 +330,21 @@ mpegts_service_enlist return 0; } +/* + * Service instance list + */ +static int +mpegts_service_enlist + ( service_t *t, tvh_input_t *ti, struct service_instance_list *sil, + int flags, int weight ) +{ + /* invalid PMT */ + if (t->s_pmt_pid <= 0 || t->s_pmt_pid >= 8191) + return SM_CODE_INVALID_SERVICE; + + return mpegts_service_enlist_raw(t, ti, sil, flags, weight); +} + /* * Start service */ @@ -1023,7 +1038,7 @@ mpegts_service_create_raw ( mpegts_mux_t *mm ) s->s_delete = mpegts_service_delete; s->s_is_enabled = mpegts_service_is_enabled; s->s_config_save = mpegts_service_config_save; - s->s_enlist = mpegts_service_enlist; + s->s_enlist = mpegts_service_enlist_raw; s->s_start_feed = mpegts_service_start; s->s_stop_feed = mpegts_service_stop; s->s_refresh_feed = mpegts_service_refresh; -- 2.47.3