summaryrefslogtreecommitdiff
path: root/mysys/mf_format.c
diff options
context:
space:
mode:
authorunknown <monty@donna.mysql.com>2000-09-16 04:27:21 +0300
committerunknown <monty@donna.mysql.com>2000-09-16 04:27:21 +0300
commit19b678eefe59529761691ddebece604107dcb42b (patch)
tree6e20280a8abcc28d14385983250a3e1823639028 /mysys/mf_format.c
parentb35a18596c602e654b821ebef8e8a3147fae6dbf (diff)
downloadmariadb-git-19b678eefe59529761691ddebece604107dcb42b.tar.gz
Faster log::write() call, memory leak fix, flush master fix.
BUILD/compile-alpha-ccc: remove deps to get things to compile better Docs/manual.texi: Small fixes configure.in: Fix for mlockmem() include/my_sys.h: Made key_cache_inited global myisammrg/myrg_close.c: Fixed memory leak myisammrg/myrg_open.c: Initialize queue to avoid memory leak bug mysys/mf_format.c: Added overflow check mysys/mf_keycache.c: Made key_cache_init more secure to use mysys/my_static.h: Make key_cache_inite global sql/ChangeLog: Changes sql/lock.cc: Added logging of locktime sql/log.cc: Added logging of locktime sql/mysql_priv.h: Added locked_in_memory sql/mysqld.cc: Added logging of locktime + locked in memory sql/sql_acl.cc: Added thd to log::write() for faster call sql/sql_base.cc: Use global key_cache variable sql/sql_class.cc: Added result row counting sql/sql_class.h: Added thd to log::write() for faster call sql/sql_db.cc: Added thd to log::write() for faster call sql/sql_delete.cc: Added thd to log::write() for faster call sql/sql_insert.cc: Added thd to log::write() for faster call sql/sql_load.cc: Added thd to log::write() for faster call sql/sql_parse.cc: Added thd to log::write() for faster call sql/sql_rename.cc: Added thd to log::write() for faster call sql/sql_table.cc: Added thd to log::write() for faster call sql/sql_update.cc: Added thd to log::write() for faster call
Diffstat (limited to 'mysys/mf_format.c')
-rw-r--r--mysys/mf_format.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/mysys/mf_format.c b/mysys/mf_format.c
index 623f1dbd19e..39084799563 100644
--- a/mysys/mf_format.c
+++ b/mysys/mf_format.c
@@ -31,6 +31,7 @@
/* 8 Pack filename as short as possibly */
/* 16 Resolve symbolic links for filename */
/* 32 Resolve filename to full path */
+ /* 64 Return NULL if too long path */
#ifdef MAXPATHLEN
#define BUFF_LEN MAXPATHLEN
@@ -80,7 +81,10 @@ my_string fn_format(my_string to, const char *name, const char *dsk,
if (strlen(dev)+length+strlen(ext) >= FN_REFLEN || length >= FN_LEN )
{ /* To long path, return original */
- uint tmp_length=strlength(startpos);
+ uint tmp_length;
+ if (flag & 64)
+ return 0;
+ tmp_length=strlength(startpos);
DBUG_PRINT("error",("dev: '%s' ext: '%s' length: %d",dev,ext,length));
(void) strmake(to,startpos,min(tmp_length,FN_REFLEN-1));
}