diff options
author | unknown <SergeyV@selena.> | 2005-11-14 16:01:10 +0300 |
---|---|---|
committer | unknown <SergeyV@selena.> | 2005-11-14 16:01:10 +0300 |
commit | 303cae4cd86db752a25836bb743796dd7d71dcf2 (patch) | |
tree | 8ad0a87b2049632526ae5cc48281ed997248d76c /include | |
parent | b10c7d60bd46135760c59291415c49db6e8d8f71 (diff) | |
download | mariadb-git-303cae4cd86db752a25836bb743796dd7d71dcf2.tar.gz |
Fixes bug #13377. my_open() & my_create() functions changed to use
my_sopen() on win32 which allows to use FILE_SHARE_DELETE flag to
allow deleting opened files. my_sopen() implementation is added to
support this functionality.
include/my_global.h:
Fixes bug #13377. Added number of constants for share delete file
open option.
include/my_sys.h:
Fixes bug #13377. Added my_sopen function.
mysys/my_create.c:
Fixes bug #13377. my_create() function changed to use my_sopen() and which allows
to use FILE_SHARE_DELETE flag on win32, which helps in deleting opened files.
mysys/my_open.c:
Fixes bug #13377. my_open() function changed to use my_sopen() on win32
which allows to use FILE_SHARE_DELETE flag to allow deleting opened files.
sql/log.cc:
Fixes bug #13377. Additional patch - remove reference counting for
opened binlog files, introduced in initial patch of #13377.
sql/sql_class.h:
Fixes bug #13377. Additional patch - remove reference counting for
opened binlog files, introduced in initial patch of #13377.
sql/sql_repl.cc:
Fixes bug #13377. Additional patch - remove reference counting for
opened binlog files, introduced in initial patch of #13377.
Diffstat (limited to 'include')
-rw-r--r-- | include/my_global.h | 9 | ||||
-rw-r--r-- | include/my_sys.h | 1 |
2 files changed, 10 insertions, 0 deletions
diff --git a/include/my_global.h b/include/my_global.h index b32a8fe6baa..33cdfa2d03c 100644 --- a/include/my_global.h +++ b/include/my_global.h @@ -553,6 +553,15 @@ typedef SOCKET_SIZE_TYPE size_socket; #define O_NOFOLLOW 0 #endif +/* additional file share flags for win32 */ +#ifdef __WIN__ +#define _SH_DENYRWD 0x110 /* deny read/write mode & delete */ +#define _SH_DENYWRD 0x120 /* deny write mode & delete */ +#define _SH_DENYRDD 0x130 /* deny read mode & delete */ +#define _SH_DENYDEL 0x140 /* deny delete only */ +#endif /* __WIN__ */ + + /* #define USE_RECORD_LOCK */ /* Unsigned types supported by the compiler */ diff --git a/include/my_sys.h b/include/my_sys.h index 76031806b82..44fe383bf4f 100644 --- a/include/my_sys.h +++ b/include/my_sys.h @@ -601,6 +601,7 @@ extern char *_my_strdup_with_length(const byte *from, uint length, #ifdef __WIN__ extern int my_access(const char *path, int amode); +extern File my_sopen(const char *path, int oflag, int shflag, int pmode); #else #define my_access access #endif |