summaryrefslogtreecommitdiff
path: root/src/xine-engine/load_plugins.c
diff options
context:
space:
mode:
authorMiguel Freitas <miguelfreitas@users.sourceforge.net>2003-01-08 01:02:27 +0000
committerMiguel Freitas <miguelfreitas@users.sourceforge.net>2003-01-08 01:02:27 +0000
commit89b2bf76f80eb05badeb340e2a00a8fbb6e17db3 (patch)
treedfd705e620522f0f22fa957ac403ee2923420274 /src/xine-engine/load_plugins.c
parent183830cbd2d23d2e616b617b1f5c7ab6867882b1 (diff)
downloadxine-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.c9
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);