Fixed Bug#19479:mysqldump creates invalid dump.

Only check for FN_DEVCHAR in filenames if FN_DEVCHAR is defined.
This allows to use table names with ":" on non windows platforms.
On Windows platform get an error if you use table name that contains FN_DEVCHAR


include/config-win.h:
  Moved FN_DEVCHAR to config-win.h
include/my_global.h:
  Moved FN_DEVCHAR to config-win.h
mysql-test/r/create.result:
  Added testcase for Bug#19479:mysqldump creates invalid dump
BitKeeper/etc/ignore:
  Added sql/share/iso639-2.txt sql/share/fixerrmsg.pl to the ignore list
mysql-test/t/create.test:
  Added testcase for Bug#19479:mysqldump creates invalid dump
mysys/mf_fn_ext.c:
  Added checking of BASKSLASH_MBTAIL as dirname_part depends on it.
  Fixed cast and indentation.
sql/table.cc:
  Only check for FN_DEVCHAR in filenames if FN_DEVCHAR is defined.
  This allows to use table names with ":" on non windows platforms.
  On Windows platform get an error if you use table name that contains FN_DEVCHAR
This commit is contained in:
unknown
2006-06-01 12:34:44 +03:00
parent 588082712a
commit 59a33015b4
7 changed files with 43 additions and 4 deletions

View File

@ -40,14 +40,14 @@ my_string fn_ext(const char *name)
DBUG_ENTER("fn_ext");
DBUG_PRINT("mfunkt",("name: '%s'",name));
#if defined(FN_DEVCHAR) || defined(FN_C_AFTER_DIR)
#if defined(FN_DEVCHAR) || defined(FN_C_AFTER_DIR) || defined(BASKSLASH_MBTAIL)
{
char buff[FN_REFLEN];
gpos=(my_string) name+dirname_part(buff,(char*) name);
}
#else
if (!(gpos=strrchr(name,FNLIBCHAR)))
gpos=name;
if (!(gpos= strrchr(name, FN_LIBCHAR)))
gpos= (my_string) name;
#endif
pos=strchr(gpos,FN_EXTCHAR);
DBUG_RETURN (pos ? pos : strend(gpos));