diff options
Diffstat (limited to 'sql')
-rw-r--r-- | sql/sp_head.cc | 2 | ||||
-rw-r--r-- | sql/sql_table.cc | 7 |
2 files changed, 7 insertions, 2 deletions
diff --git a/sql/sp_head.cc b/sql/sp_head.cc index 387596263b1..4a0e18129ad 100644 --- a/sql/sp_head.cc +++ b/sql/sp_head.cc @@ -482,7 +482,7 @@ sp_head::operator new(size_t size) throw() } void -sp_head::operator delete(void *ptr, size_t size) +sp_head::operator delete(void *ptr, size_t size) throw() { DBUG_ENTER("sp_head::operator delete"); MEM_ROOT own_root; diff --git a/sql/sql_table.cc b/sql/sql_table.cc index 0f6678a01e8..5bd7d446cbd 100644 --- a/sql/sql_table.cc +++ b/sql/sql_table.cc @@ -207,7 +207,12 @@ uint build_table_filename(char *buff, size_t bufflen, const char *db, if (pos - rootdir_len >= buff && memcmp(pos - rootdir_len, FN_ROOTDIR, rootdir_len) != 0) pos= strnmov(pos, FN_ROOTDIR, end - pos); - pos= strxnmov(pos, end - pos, dbbuff, FN_ROOTDIR, tbbuff, ext, NullS); + pos= strxnmov(pos, end - pos, dbbuff, FN_ROOTDIR, NullS); +#ifdef USE_SYMDIR + unpack_dirname(buff, buff); + pos= strend(buff); +#endif + pos= strxnmov(pos, end - pos, tbbuff, ext, NullS); DBUG_PRINT("exit", ("buff: '%s'", buff)); DBUG_RETURN(pos - buff); |