diff options
author | Erlang/OTP <[email protected]> | 2010-06-07 14:24:46 +0000 |
---|---|---|
committer | Erlang/OTP <[email protected]> | 2010-06-07 14:24:46 +0000 |
commit | 3e97f3dc6ad63707d283e7b9924df5cc8eb13a84 (patch) | |
tree | 0e66d4f9eeb04605fde8089332bd38aed8fdc653 /erts/emulator/drivers/win32/win_efile.c | |
parent | 4f63a79d28435659af11fa94ed93f670a6759f4a (diff) | |
parent | bac96ae5bb5bfaa0c160a603c6db01dbcd7c83df (diff) | |
download | otp-3e97f3dc6ad63707d283e7b9924df5cc8eb13a84.tar.gz otp-3e97f3dc6ad63707d283e7b9924df5cc8eb13a84.tar.bz2 otp-3e97f3dc6ad63707d283e7b9924df5cc8eb13a84.zip |
Merge branch 'ms/file-exclusive-mode' into dev
* ms/file-exclusive-mode:
Update preloaded modules
Support opening files in exclusive mode
OTP-8670 ms/file-exclusive-mode
There is a new option 'exclusive' to file:open/2 that uses the OS O_EXCL
flag where supported to open the file in exclusive mode.
Diffstat (limited to 'erts/emulator/drivers/win32/win_efile.c')
-rw-r--r-- | erts/emulator/drivers/win32/win_efile.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/erts/emulator/drivers/win32/win_efile.c b/erts/emulator/drivers/win32/win_efile.c index 24b6fb30dc..04bd1139f5 100644 --- a/erts/emulator/drivers/win32/win_efile.c +++ b/erts/emulator/drivers/win32/win_efile.c @@ -689,6 +689,9 @@ Sint64* pSize; /* Where to store the size of the file. */ if (flags & EFILE_MODE_APPEND) { crFlags = OPEN_ALWAYS; } + if (flags & EFILE_MODE_EXCL) { + crFlags = CREATE_NEW; + } fd = CreateFile(name, access, FILE_SHARE_READ | FILE_SHARE_WRITE | FILE_SHARE_DELETE, NULL, crFlags, FILE_ATTRIBUTE_NORMAL, NULL); |