From: Lauri Myllari Date: Fri, 9 Jan 2015 18:11:21 +0000 (-0800) Subject: psip: look up EIT channel based on source_id X-Git-Tag: v4.2.1~1836 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=54565e1941444a87519e48178603087c0d359adc;p=thirdparty%2Ftvheadend.git psip: look up EIT channel based on source_id --- diff --git a/src/epggrab/module/psip.c b/src/epggrab/module/psip.c index d41bd76ee..65f7cb143 100644 --- a/src/epggrab/module/psip.c +++ b/src/epggrab/module/psip.c @@ -90,8 +90,15 @@ _psip_eit_callback tsid = ptr[0] << 8 | ptr[1]; extraid = tsid; - svc = mpegts_service_find(mm, tsid, 0, 0, 0); - if (!svc) return -1; + /* Look up channel based on the source id */ + LIST_FOREACH(svc, &mm->mm_services, s_dvb_mux_link) { + if (svc->s_atsc_source_id == tsid) + break; + } + if (!svc) { + tvhwarn("psip", "EIT with no associated channel found (tsid 0x%04x)", tsid); + return -1; + } /* Begin */ r = dvb_table_begin(mt, ptr, len, tableid, extraid, 7,