diff options
author | Miguel Freitas <miguelfreitas@users.sourceforge.net> | 2003-01-08 01:02:27 +0000 |
---|---|---|
committer | Miguel Freitas <miguelfreitas@users.sourceforge.net> | 2003-01-08 01:02:27 +0000 |
commit | 89b2bf76f80eb05badeb340e2a00a8fbb6e17db3 (patch) | |
tree | dfd705e620522f0f22fa957ac403ee2923420274 /src/xine-engine/load_plugins.c | |
parent | 183830cbd2d23d2e616b617b1f5c7ab6867882b1 (diff) | |
download | xine-lib-89b2bf76f80eb05badeb340e2a00a8fbb6e17db3.tar.gz xine-lib-89b2bf76f80eb05badeb340e2a00a8fbb6e17db3.tar.bz2 |
fixes/cleanups of the handled/unhandled codecs
for more information see message on xine-devel
CVS patchset: 3818
CVS date: 2003/01/08 01:02:27
Diffstat (limited to 'src/xine-engine/load_plugins.c')
-rw-r--r-- | src/xine-engine/load_plugins.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/xine-engine/load_plugins.c b/src/xine-engine/load_plugins.c index 8382bebae..1e4542b7b 100644 --- a/src/xine-engine/load_plugins.c +++ b/src/xine-engine/load_plugins.c @@ -17,7 +17,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA * - * $Id: load_plugins.c,v 1.129 2003/01/03 22:38:27 miguelfreitas Exp $ + * $Id: load_plugins.c,v 1.130 2003/01/08 01:02:32 miguelfreitas Exp $ * * * Load input/demux/audio_out/video_out/codec plugins @@ -478,6 +478,12 @@ static void _load_required_plugins(xine_t *this, xine_list_t *list) { #endif node->plugin_class = _load_plugin_class (this, node->filename, node->info, NULL); + + /* in case of failure remove from list */ + if( !node->plugin_class ) { + xine_list_delete_current(list); + node = xine_list_prev_content(list); /* delete advances, so get previous */ + } } node = xine_list_next_content (list); @@ -1012,7 +1018,6 @@ static demux_plugin_t *probe_demux (xine_stream_t *stream, int method1, int meth #ifdef LOG printf ("load_plugins: probing demux '%s'\n", node->info->id); #endif - if ((plugin = ((demux_class_t *)node->plugin_class)->open_plugin(node->plugin_class, stream, input))) { if (stream->xine->verbosity) printf ("load_plugins: using demuxer '%s'\n", node->info->id); |