diff --git a/src/wp-admin/includes/class-wp-filesystem-direct.php b/src/wp-admin/includes/class-wp-filesystem-direct.php index ba4ae9facd..2d4e56640a 100644 --- a/src/wp-admin/includes/class-wp-filesystem-direct.php +++ b/src/wp-admin/includes/class-wp-filesystem-direct.php @@ -194,10 +194,10 @@ class WP_Filesystem_Direct extends WP_Filesystem_Base { * FIXME does not handle errors in fileperms() * * @param string $file Path to the file. - * @return string Mode of the file (last 4 digits). + * @return string Mode of the file (last 3 digits). */ function getchmod($file) { - return substr(decoct(@fileperms($file)),3); + return substr( decoct( @fileperms( $file ) ), -3 ); } function group($file) { diff --git a/src/wp-admin/includes/class-wp-filesystem-ssh2.php b/src/wp-admin/includes/class-wp-filesystem-ssh2.php index f942989dad..30a96b1da5 100644 --- a/src/wp-admin/includes/class-wp-filesystem-ssh2.php +++ b/src/wp-admin/includes/class-wp-filesystem-ssh2.php @@ -230,7 +230,7 @@ class WP_Filesystem_SSH2 extends WP_Filesystem_Base { } function getchmod($file) { - return substr(decoct(@fileperms( 'ssh2.sftp://' . $this->sftp_link . '/' . ltrim($file, '/') )),3); + return substr( decoct( @fileperms( 'ssh2.sftp://' . $this->sftp_link . '/' . ltrim( $file, '/' ) ) ), -3 ); } function group($file) {