--- audio_getid3.module	2007-08-30 06:56:16.000000000 +1000
+++ audio_getid3.module	2008-04-04 13:01:12.397600000 +1100
@@ -51,7 +51,7 @@ function audio_getid3_menu($may_cache) {
 function audio_getid3_audio($op, &$node) {
   switch ($op) {
     case 'upload':
-      if ($info = audio_read_id3tags($node->audio_file->filepath, TRUE)) {
+      if (preg_match('/^.*\.mp3$/u', $node->audio_file->filename) && $info = audio_read_id3tags($node->audio_file->filepath, TRUE)) {
         $node->audio_tags = $info['tags'];
         $node->audio_images = $info['images'];
         // use array_merge so that the play count and downloadable settings aren't
@@ -69,8 +69,10 @@ function audio_getid3_audio($op, &$node)
     case 'insert':
     case 'insert revision':
     case 'update':
-      // update the metadata in the file
-      _audio_getid3_save_to_file($node);
+      if (preg_match('/^.*\.mp3$/u', $node->audio_file->filename)) {
+        // update the metadata in the file
+        _audio_getid3_save_to_file($node);
+      }
       break;
 
     default;
