mirror of
https://codeberg.org/icewind/SMB.git
synced 2026-06-03 09:14:06 +02:00
improve mode mask detection
This commit is contained in:
parent
80921d69f5
commit
24db40c674
1 changed files with 6 additions and 6 deletions
|
|
@ -116,8 +116,8 @@ class NativeFileInfo implements IFileInfo {
|
|||
*/
|
||||
public function isDirectory() {
|
||||
$mode = $this->getMode();
|
||||
if ($mode > 0x80) {
|
||||
return (bool)($mode & 0x4000); // 0x80: unix directory flag
|
||||
if ($mode > 0x1000) {
|
||||
return (bool)($mode & 0x4000); // 0x4000: unix directory flag
|
||||
} else {
|
||||
return (bool)($mode & IFileInfo::MODE_DIRECTORY);
|
||||
}
|
||||
|
|
@ -128,7 +128,7 @@ class NativeFileInfo implements IFileInfo {
|
|||
*/
|
||||
public function isReadOnly() {
|
||||
$mode = $this->getMode();
|
||||
if ($mode > 0x80) {
|
||||
if ($mode > 0x1000) {
|
||||
return !(bool)($mode & 0x80); // 0x80: owner write permissions
|
||||
} else {
|
||||
return (bool)($mode & IFileInfo::MODE_READONLY);
|
||||
|
|
@ -140,7 +140,7 @@ class NativeFileInfo implements IFileInfo {
|
|||
*/
|
||||
public function isHidden() {
|
||||
$mode = $this->getMode();
|
||||
if ($mode > 0x80) {
|
||||
if ($mode > 0x1000) {
|
||||
return strlen($this->name) > 0 && $this->name[0] === '.';
|
||||
} else {
|
||||
return (bool)($mode & IFileInfo::MODE_HIDDEN);
|
||||
|
|
@ -152,7 +152,7 @@ class NativeFileInfo implements IFileInfo {
|
|||
*/
|
||||
public function isSystem() {
|
||||
$mode = $this->getMode();
|
||||
if ($mode > 0x80) {
|
||||
if ($mode > 0x1000) {
|
||||
return false;
|
||||
} else {
|
||||
return (bool)($mode & IFileInfo::MODE_SYSTEM);
|
||||
|
|
@ -164,7 +164,7 @@ class NativeFileInfo implements IFileInfo {
|
|||
*/
|
||||
public function isArchived() {
|
||||
$mode = $this->getMode();
|
||||
if ($mode > 0x80) {
|
||||
if ($mode > 0x1000) {
|
||||
return false;
|
||||
} else {
|
||||
return (bool)($mode & IFileInfo::MODE_ARCHIVE);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue