Sweden-Number/dlls/kernel32
Dmitry Timoshkov c26b6afad3 kernel32: CreateDirectory shouldn't return ERROR_ACCESS_DENIED for the root of the drive.
According to the testbot results CreateDirectory("C:\\", NULL) fails
with ERROR_ACCESS_DENIED for not administrators. However with UAC enabled
and not and administrator account I get ERROR_ALREADY_EXISTS in that case
with Windows 7 64-bit running on real hardware. Moreover, Wine doesn't
really perform any access checks in that case and blindly assumes that
returning STATUS_ACCESS_DENIED is correct behaviour for the drive's root:
dlls/ntdll/directory.c,lookup_unix_name().

This patch fixes an application that can't find its data files because
after it receives ERROR_ACCESS_DENIED it stops further directory traversing.

Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-12-28 17:42:23 +01:00
..
nls
tests kernel32: CreateDirectory shouldn't return ERROR_ACCESS_DENIED for the root of the drive. 2018-12-28 17:42:23 +01:00
Makefile.in
actctx.c
atom.c
change.c kernel32: Don't leak an event handle on errors. 2015-05-18 14:07:21 +09:00
comm.c
computername.c kernel32: Use the ARRAY_SIZE() macro. 2018-08-14 10:15:59 +02:00
console.c kernel32: Add AttachConsole implementation. 2018-08-16 13:21:56 +02:00
console_private.h
cpu.c kernel32: Add stub case for ARM64 in GetSystemInfo. 2018-11-19 22:42:41 +01:00
debugger.c
editline.c
environ.c
except.c kernel32: Don't clear WINEDEBUG in the debugger process if +winedbg is set. 2018-08-16 10:57:35 +02:00
fiber.c
file.c kernel32: Ignore FileIoPriorityHintInfo in SetFileInformationByHandle(). 2018-11-20 16:26:04 +01:00
format_msg.c
heap.c
kernel32.spec kernel32: Implement GetCurrentThreadStackLimits. 2018-11-26 16:41:47 +01:00
kernel_main.c
kernel_private.h kernel32: Move MODULE_get_binary_info implementation to process.c. 2018-09-27 13:27:28 +02:00
lcformat.c kernel32: Use the ARRAY_SIZE() macro. 2018-08-14 10:15:59 +02:00
locale.c kernel32: Implement FindStringOrdinal. 2018-10-30 10:53:50 +01:00
locale_rc.rc
lzexpand.c
module.c kernel32: Move MODULE_get_binary_info implementation to process.c. 2018-09-27 13:27:28 +02:00
nameprep.c
oldconfig.c
path.c kernel32: GetLongPathName should fail when called with a wildcard. 2018-10-22 09:55:02 +02:00
powermgnt.c
process.c makefiles: Create 64-bit wine loader symlinks in the WoW64 build tree. 2018-11-26 14:21:29 +01:00
profile.c kernel32: Use the ARRAY_SIZE() macro. 2018-08-14 10:15:59 +02:00
resource.c kernel32: Fix BeginUpdateResource structure layout. 2018-08-14 14:59:48 +02:00
string.c
sync.c kernel32: Wait on pipe handle in TransactNamedPipe if needed. 2018-10-30 19:00:35 +01:00
tape.c
term.c kernel32: Use the ARRAY_SIZE() macro. 2018-08-14 10:15:59 +02:00
thread.c kernel32: Implement GetCurrentThreadStackLimits. 2018-11-26 16:41:47 +01:00
time.c kernel32: Use Rtl function when the time zone name is useless. 2018-12-17 22:35:22 +01:00
toolhelp.c
version.c
version.rc
virtual.c kernel32: Add DECLSPEC_HOTPATCH to functions patched by libtcmalloc. 2018-09-18 20:59:38 +02:00
volume.c kernel32: Use the ARRAY_SIZE() macro. 2018-08-14 10:15:59 +02:00
wer.c
winerror.mc