# HG changeset patch # User William Pitcock # Date 1195302147 21600 # Node ID ecda04452d14b623449fbf6a91ace76c336cecc4 # Parent aea8b763b13409979605d391824f207a98379ad6# Parent 32bd9d553b0ba63088ff794a6d662302ef1995e7 Automated merge with ssh://hg.atheme.org//hg/audacious diff -r aea8b763b134 -r ecda04452d14 src/audacious/input.c --- a/src/audacious/input.c Sat Nov 17 06:21:00 2007 -0600 +++ b/src/audacious/input.c Sat Nov 17 06:22:27 2007 -0600 @@ -318,9 +318,9 @@ vfs_rewind(fd); - if (ip->probe_for_tuple && - cfg.use_pl_metadata && - (!loading || (loading && cfg.get_info_on_load)) ) { + /* some input plugins provide probe_for_tuple() only. */ + if ( (ip->probe_for_tuple && !ip->is_our_file_from_vfs && !ip->is_our_file) || + (ip->probe_for_tuple && (cfg.use_pl_metadata && (!loading || (loading && cfg.get_info_on_load)))) ) { Tuple *tuple = ip->probe_for_tuple(filename_proxy, fd); diff -r aea8b763b134 -r ecda04452d14 src/audacious/pluginenum.c --- a/src/audacious/pluginenum.c Sat Nov 17 06:21:00 2007 -0600 +++ b/src/audacious/pluginenum.c Sat Nov 17 06:22:27 2007 -0600 @@ -885,6 +885,12 @@ } } +static void +remove_list(gpointer key, gpointer value, gpointer data) +{ + g_list_free(*(GList **)value); +} + void plugin_system_cleanup(void) { @@ -1052,5 +1058,6 @@ } mowgli_dictionary_destroy(plugin_dict, NULL, NULL); + g_hash_table_foreach(ext_hash, remove_list, NULL); g_hash_table_remove_all(ext_hash); }