diff src/console/Audacious_Driver.cxx @ 385:ac806e416c48 trunk

[svn] - some improvements for chiptune expansion efficiency
author nenolod
date Fri, 15 Dec 2006 21:24:10 -0800
parents 66e09ad0944e
children d124034ebea3
line wrap: on
line diff
--- a/src/console/Audacious_Driver.cxx	Fri Dec 15 21:23:09 2006 -0800
+++ b/src/console/Audacious_Driver.cxx	Fri Dec 15 21:24:10 2006 -0800
@@ -71,7 +71,7 @@
 	gme_type_t type;
 	
 	// Parses path and identifies file type
-	File_Handler( const char* path, VFSFile* fd = 0 );
+	File_Handler( const char* path, VFSFile* fd = 0, gboolean is_our_file_hack = FALSE );
 	
 	// Creates emulator and returns 0. If this wasn't a music file or
 	// emulator couldn't be created, returns 1.
@@ -85,7 +85,7 @@
 	Gzip_Reader in;
 };
 
-File_Handler::File_Handler( const char* path_in, VFSFile* fd )
+File_Handler::File_Handler( const char* path_in, VFSFile* fd, gboolean is_our_file_hack )
 {
 	emu   = 0;
 	type  = 0;
@@ -109,7 +109,7 @@
 
 	// if the track is specified, then we have a match. don't worry
 	// about it right now -nenolod
-	if (track_specified)
+	if (track_specified && is_our_file_hack)
 		return;
 	
 	// open vfs
@@ -400,7 +400,7 @@
 static gint is_our_file_from_vfs( gchar* path, VFSFile* fd )
 {
 	gint result = 0;
-	File_Handler fh( path, fd );
+	File_Handler fh( path, fd, TRUE );
 	if ( fh.type )
 	{
 		if ( fh.track_specified || fh.type->track_count == 1 )