--- mysql-5.1/storage/myisam/mi_create.c	2007-01-19 07:07:07.000000000 -0500
+++ mysql-5.1-patch/storage/myisam/mi_create.c	2007-03-01 22:34:37.000000000 -0500
@@ -599,10 +599,12 @@
   }
   else
   {
+    char *iext= strrchr(name, '.');
+    int have_iext= iext && !strcmp(iext, MI_NAME_IEXT);
     fn_format(filename, name, "", MI_NAME_IEXT,
               (MY_UNPACK_FILENAME |
                (flags & HA_DONT_TOUCH_DATA) ? MY_RETURN_REAL_PATH : 0) |
-                MY_APPEND_EXT);
+                (have_iext ? MY_REPLACE_EXT : MY_APPEND_EXT));
     linkname_ptr=0;
     /* Replace the current file */
     create_flag=MY_DELETE_OLD;


