* fhandler_disk_file.cc (fhandler_base::fstat_helper): Fix R/O bit
handling on filesystems without ACL support.
This commit is contained in:
		| @@ -1,3 +1,8 @@ | |||||||
|  | 2007-12-11  Corinna Vinschen  <corinna@vinschen.de> | ||||||
|  |  | ||||||
|  | 	* fhandler_disk_file.cc (fhandler_base::fstat_helper): Fix R/O bit | ||||||
|  | 	handling on filesystems without ACL support. | ||||||
|  |  | ||||||
| 2007-12-11  Corinna Vinschen  <corinna@vinschen.de> | 2007-12-11  Corinna Vinschen  <corinna@vinschen.de> | ||||||
|  |  | ||||||
| 	* localtime.cc (tzset): Guard by a muto for thread safety. | 	* localtime.cc (tzset): Guard by a muto for thread safety. | ||||||
|   | |||||||
| @@ -553,13 +553,12 @@ fhandler_base::fstat_helper (struct __stat64 *buf, | |||||||
|     { |     { | ||||||
|       buf->st_mode |= STD_RBITS; |       buf->st_mode |= STD_RBITS; | ||||||
|  |  | ||||||
|       if (!::has_attribute (dwFileAttributes, FILE_ATTRIBUTE_READONLY) |       if (!::has_attribute (dwFileAttributes, FILE_ATTRIBUTE_READONLY)) | ||||||
| 	  && !pc.isdir () && !pc.issymlink ()) |  | ||||||
| 	buf->st_mode |= STD_WBITS; | 	buf->st_mode |= STD_WBITS; | ||||||
|       /* | S_IWGRP | S_IWOTH; we don't give write to group etc */ |       /* | S_IWGRP | S_IWOTH; we don't give write to group etc */ | ||||||
|  |  | ||||||
|       if (S_ISDIR (buf->st_mode)) |       if (pc.isdir ()) | ||||||
| 	buf->st_mode |= S_IFDIR | STD_XBITS; | 	buf->st_mode |= S_IFDIR | STD_WBITS | STD_XBITS; | ||||||
|       else if (buf->st_mode & S_IFMT) |       else if (buf->st_mode & S_IFMT) | ||||||
| 	/* nothing */; | 	/* nothing */; | ||||||
|       else if (is_fs_special ()) |       else if (is_fs_special ()) | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user