On Tue, Nov 04, 2008 at 08:57:42PM -0800, Mike Mohr wrote: > This isn't fixed yet: > > Playing dvb://ION. > ERROR OPENING FRONTEND DEVICE /dev/dvb/adapter0/frontend0: ERRNO 16 > DVB_SET_CHANNEL2, COULDN'T OPEN DEVICES OF CARD: 0, EXIT > ERROR, COULDN'T SET CHANNEL 10: Failed to open dvb://ION. > Select error: Bad file descriptor > > the problem is still present when mplayer exits on error. Are you sure this is a regression? I'd think that bug has been there since forever... Anyway, you could try attached patch... -------------- next part -------------- Index: stream/stream_dvb.c =================================================================== --- stream/stream_dvb.c (revision 27896) +++ stream/stream_dvb.c (working copy) @@ -614,6 +614,7 @@ #ifndef CONFIG_DVB_HEAD close(priv->sec_fd); #endif + priv->fe_fd = priv->sec_fd = priv->dvr_fd = -1; priv->is_on = 0; dvb_free_config(priv->config); @@ -685,6 +686,7 @@ return STREAM_ERROR; priv = (dvb_priv_t *)stream->priv; + priv->fe_fd = priv->sec_fd = priv->dvr_fd = -1; priv->config = dvb_get_config(); if(priv->config == NULL) { Index: stream/dvb_tune.c =================================================================== --- stream/dvb_tune.c (revision 27896) +++ stream/dvb_tune.c (working copy) @@ -117,9 +117,7 @@ mp_msg(MSGT_DEMUX, MSGL_ERR, "ERROR OPENING FRONTEND DEVICE %s: ERRNO %d\n", frontend_dev, errno); return 0; } -#ifdef CONFIG_DVB_HEAD - priv->sec_fd=-1; -#else +#ifndef CONFIG_DVB_HEAD priv->sec_fd = open(sec_dev, O_RDWR); if(priv->sec_fd < 0) {