From 30155960a4d4799743e59e89724dcc6550ff5229 Mon Sep 17 00:00:00 2001 From: nicodvb Date: Sun, 26 Nov 2006 12:03:23 +0000 Subject: match exactly card number N specified, rather than the N-th actually usable git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21257 b3059339-0415-0410-9bf9-f77b7e298cf2 --- stream/stream_dvb.c | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) (limited to 'stream/stream_dvb.c') diff --git a/stream/stream_dvb.c b/stream/stream_dvb.c index b62024b0ba..a5fc6b0683 100644 --- a/stream/stream_dvb.c +++ b/stream/stream_dvb.c @@ -666,7 +666,7 @@ static int dvb_open(stream_t *stream, int mode, void *opts, int *file_format) struct stream_priv_s* p = (struct stream_priv_s*)opts; dvb_priv_t *priv; char *progname; - int tuner_type = 0; + int tuner_type = 0, i; if(mode != STREAM_READ) @@ -688,13 +688,22 @@ static int dvb_open(stream_t *stream, int mode, void *opts, int *file_format) dvb_config->priv = priv; priv->config = dvb_config; - if(p->card < 1 || p->card > priv->config->count) + priv->card = -1; + for(i=0; iconfig->count; i++) + { + if(priv->config->cards[i].devno+1 == p->card) + { + priv->card = i; + break; + } + } + + if(priv->card == -1) { free(priv); mp_msg(MSGT_DEMUX, MSGL_ERR, "NO CONFIGURATION FOUND FOR CARD N. %d, exit\n", p->card); return STREAM_ERROR; } - priv->card = p->card - 1; priv->timeout = p->timeout; tuner_type = priv->config->cards[priv->card].type; -- cgit v1.2.3