diff options
author | unknown <monty@work.mysql.com> | 2001-06-01 23:51:23 +0200 |
---|---|---|
committer | unknown <monty@work.mysql.com> | 2001-06-01 23:51:23 +0200 |
commit | 9f0b7b7cf7df027fbb3decb52033eb489fb32f05 (patch) | |
tree | 4c917b01d5598c1df213f3810dac420e5a21a8dd /mysys | |
parent | 14cc2b78626b2c39cf34efa81c0289e5626e25f9 (diff) | |
parent | 3e8412b89bd77cc72f16e020687713d916860d99 (diff) | |
download | mariadb-git-9f0b7b7cf7df027fbb3decb52033eb489fb32f05.tar.gz |
merge
BitKeeper/etc/logging_ok:
auto-union
include/my_sys.h:
Auto merged
myisam/myisamchk.c:
Auto merged
sql/share/portuguese/errmsg.txt:
Auto merged
sql/sql_table.cc:
Auto merged
Diffstat (limited to 'mysys')
-rw-r--r-- | mysys/my_copy.c | 4 | ||||
-rw-r--r-- | mysys/my_static.c | 1 | ||||
-rw-r--r-- | mysys/my_symlink2.c | 6 |
3 files changed, 7 insertions, 4 deletions
diff --git a/mysys/my_copy.c b/mysys/my_copy.c index bfd7e957585..be131873118 100644 --- a/mysys/my_copy.c +++ b/mysys/my_copy.c @@ -54,7 +54,7 @@ int my_copy(const char *from, const char *to, myf MyFlags) if (MyFlags & MY_HOLD_ORIGINAL_MODES) /* Copy stat if possible */ new_file_stat=stat((char*) to, &new_stat_buff); - if ((from_file=my_open(from,O_RDONLY,MyFlags)) >= 0) + if ((from_file=my_open(from,O_RDONLY | O_SHARE,MyFlags)) >= 0) { if (stat(from,&stat_buff)) { @@ -64,7 +64,7 @@ int my_copy(const char *from, const char *to, myf MyFlags) if (MyFlags & MY_HOLD_ORIGINAL_MODES && !new_file_stat) stat_buff=new_stat_buff; if ((to_file= my_create(to,(int) stat_buff.st_mode, - O_WRONLY | O_TRUNC | O_BINARY, + O_WRONLY | O_TRUNC | O_BINARY | O_SHARE, MyFlags)) < 0) goto err; diff --git a/mysys/my_static.c b/mysys/my_static.c index f1339877273..3fc68455841 100644 --- a/mysys/my_static.c +++ b/mysys/my_static.c @@ -97,4 +97,5 @@ int (*fatal_error_handler_hook)(uint error,const char *str,myf MyFlags)= my_bool NEAR my_disable_locking=0; my_bool NEAR my_disable_async_io=0; my_bool NEAR my_disable_flush_key_blocks=0; +my_bool NEAR my_disable_symlinks=0; my_bool NEAR mysys_uses_curses=0; diff --git a/mysys/my_symlink2.c b/mysys/my_symlink2.c index 671531393f7..9fcd993ac1f 100644 --- a/mysys/my_symlink2.c +++ b/mysys/my_symlink2.c @@ -62,7 +62,8 @@ File my_create_with_symlink(const char *linkname, const char *filename, int my_delete_with_symlink(const char *name, myf MyFlags) { char link_name[FN_REFLEN]; - int was_symlink= !my_readlink(link_name, name, MYF(0)); + int was_symlink= (!my_disable_symlinks && + !my_readlink(link_name, name, MYF(0))); int result; DBUG_ENTER("my_delete_with_symlink"); @@ -90,7 +91,8 @@ int my_rename_with_symlink(const char *from, const char *to, myf MyFlags) return my_rename(from, to, MyFlags); #else char link_name[FN_REFLEN], tmp_name[FN_REFLEN]; - int was_symlink= !my_readlink(link_name, name, MYF(0)); + int was_symlink= (!my_disable_symlinks && + !my_readlink(link_name, name, MYF(0))); int result; DBUG_ENTER("my_rename_with_symlink"); |