This makes next patch work for RemoveDirectory() call in dlls/kernel32/tests/profile.c,test_profile_directory_readonly().
Signed-off-by: Dmitry Timoshkov dmitry@baikal.ru --- server/fd.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/server/fd.c b/server/fd.c index fa174f597e..246b758f90 100644 --- a/server/fd.c +++ b/server/fd.c @@ -2307,8 +2307,8 @@ static void set_fd_disposition( struct fd *fd, int unlink ) return; }
- /* can't unlink files we don't have permission to access */ - if (unlink && !(st.st_mode & (S_IWUSR | S_IWGRP | S_IWOTH))) + /* can't unlink files we don't have permission to write */ + if (unlink && !(st.st_mode & (S_IWUSR | S_IWGRP | S_IWOTH)) && !S_ISDIR(st.st_mode)) { set_error( STATUS_CANNOT_DELETE ); return;