From d6ef8660e0c0e9058f77d134efe4b7f5b327ee6c Mon Sep 17 00:00:00 2001 From: Johannes Stezenbach Date: Thu, 7 Jul 2005 17:58:00 -0700 Subject: [PATCH] --- yaml --- r: 4328 b: refs/heads/master c: 12ba05049f9060e21ed1f95e876d8d063d2575b2 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/media/dvb/ttpci/av7110.c | 15 +++++++-------- 2 files changed, 8 insertions(+), 9 deletions(-) diff --git a/[refs] b/[refs] index dbb52c3aca2b..d46cbd180803 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: ce18a223607b0e8cc9a8375abc64281a13ac423c +refs/heads/master: 12ba05049f9060e21ed1f95e876d8d063d2575b2 diff --git a/trunk/drivers/media/dvb/ttpci/av7110.c b/trunk/drivers/media/dvb/ttpci/av7110.c index e21deee9a985..87767af7207c 100644 --- a/trunk/drivers/media/dvb/ttpci/av7110.c +++ b/trunk/drivers/media/dvb/ttpci/av7110.c @@ -1050,8 +1050,7 @@ static int av7110_stop_feed(struct dvb_demux_feed *feed) { struct dvb_demux *demux = feed->demux; struct av7110 *av7110 = demux->priv; - - int ret = 0; + int i, rc, ret = 0; dprintk(4, "%p\n", av7110); if (feed->type == DMX_TYPE_TS) { @@ -1072,17 +1071,17 @@ static int av7110_stop_feed(struct dvb_demux_feed *feed) } if (!ret && feed->type == DMX_TYPE_SEC) { - int i; - - for (i = 0; ifilternum; i++) + for (i = 0; ifilternum; i++) { if (demux->filter[i].state == DMX_STATE_GO && demux->filter[i].filter.parent == &feed->feed.sec) { demux->filter[i].state = DMX_STATE_READY; if (demux->dmx.frontend->source != DMX_MEMORY_FE) { - ret = StopHWFilter(&demux->filter[i]); - if (ret) - break; + rc = StopHWFilter(&demux->filter[i]); + if (!ret) + ret = rc; + /* keep going, stop as many filters as possible */ } + } } }