diff options
Diffstat (limited to 'source3/smbd/open.c')
-rw-r--r-- | source3/smbd/open.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/source3/smbd/open.c b/source3/smbd/open.c index e688f8de48..084ae9a1bf 100644 --- a/source3/smbd/open.c +++ b/source3/smbd/open.c @@ -754,7 +754,8 @@ static BOOL open_match_attributes(connection_struct *conn, char *path, mode_t ex old_dos_mode = dos_mode(conn, path, &sbuf); sbuf.st_mode = new_mode; - new_dos_mode = dos_mode(conn, path, &sbuf); + /* The new mode conversion shouldn't look at pathname. */ + new_dos_mode = dos_mode_from_sbuf(conn, &sbuf); noarch_old_dos_mode = (old_dos_mode & ~FILE_ATTRIBUTE_ARCHIVE); noarch_new_dos_mode = (new_dos_mode & ~FILE_ATTRIBUTE_ARCHIVE); |