Index: banshee/src/Core/Banshee.Base/Dap/Dap.cs
===================================================================
--- banshee.orig/src/Core/Banshee.Base/Dap/Dap.cs	2007-03-03 21:33:42.000000000 -0500
+++ banshee/src/Core/Banshee.Base/Dap/Dap.cs	2007-03-03 21:35:43.000000000 -0500
@@ -552,6 +552,19 @@
             
             return false;
         }
+
+        private bool KnownSongFormat(string filename)
+        {
+            string ext = Path.GetExtension(filename).ToLower().Trim();
+
+            foreach(string vext in CodecType.GetAllExtensions()) {
+                if(ext == "." + vext) {
+                    return true;
+                }
+            }
+
+            return false;
+        }
         
         private string GetCachedSongFileName(SafeUri uri)
         {
@@ -560,6 +573,10 @@
             if(ValidSongFormat(filename)) {
                 return filename;
             }
+
+            if (!KnownSongFormat(filename)) {
+                return filename;
+            }
                 
             string path = PathUtil.MakeFileNameKey(uri);
             string dir = Path.GetDirectoryName(path);
Index: banshee/src/Core/Banshee.Base/Dap/DapMisc.cs
===================================================================
--- banshee.orig/src/Core/Banshee.Base/Dap/DapMisc.cs	2007-03-03 21:33:42.000000000 -0500
+++ banshee/src/Core/Banshee.Base/Dap/DapMisc.cs	2007-03-03 21:35:43.000000000 -0500
@@ -27,6 +27,7 @@
  */
  
 using System;
+using System.Collections;
 using System.Collections.Generic;
 
 using Banshee.Base;
@@ -136,6 +137,22 @@
              
              return null;
         }
+
+        private static string [] all_extensions = null;
+        public static string [] GetAllExtensions()
+        {
+            if (all_extensions != null)
+                return all_extensions;
+
+            ArrayList extensions = new ArrayList();
+            foreach (string type in new string[] { Mp3, Mp4, Wma, Ogg, Wav, Flac }) {
+                foreach (string ext in GetExtensions(type)) {
+                    extensions.Add(ext);
+                }
+            }
+            all_extensions = extensions.ToArray(typeof(string)) as string [];
+            return all_extensions;
+        }
     }
 
     [AttributeUsage(AttributeTargets.Class, AllowMultiple = false)]
