WordPress.org

Make WordPress Core

Ticket #10170: 10170.diff

File 10170.diff, 6.7 KB (added by dd32, 5 years ago)
  • wp-admin/includes/class-wp-filesystem-base.php

     
    210210                        return trailingslashit($base . $last_path); 
    211211                } 
    212212                if ( $loop ) 
    213                         return false;//Prevent tihs function looping again. 
     213                        return false; //Prevent tihs function looping again. 
    214214                //As an extra last resort, Change back to / if the folder wasnt found. This comes into effect when the CWD is /home/user/ but WP is at /var/www/.... mainly dedicated setups. 
    215215                return $this->search_for_folder($folder, '/', true); 
    216216 
     
    242242                        $info = 'd'; 
    243243                elseif (($perms & 0x2000) == 0x2000) // Character special 
    244244                        $info = 'c'; 
    245                 elseif (($perms & 0x1000) == 0x1000)// FIFO pipe 
     245                elseif (($perms & 0x1000) == 0x1000) // FIFO pipe 
    246246                        $info = 'p'; 
    247247                else // Unknown 
    248248                        $info = 'u'; 
  • wp-admin/includes/class-wp-filesystem-direct.php

     
    1515 * @uses WP_Filesystem_Base Extends class 
    1616 */ 
    1717class WP_Filesystem_Direct extends WP_Filesystem_Base { 
    18         var $permission = null; 
    1918        var $errors = null; 
    2019        function WP_Filesystem_Direct($arg) { 
    2120                $this->method = 'direct'; 
    2221                $this->errors = new WP_Error(); 
    23                 $this->permission = umask(); 
    2422        } 
    2523        function connect() { 
    2624                return true; 
    2725        } 
    28         function setDefaultPermissions($perm) { 
    29                 $this->permission = $perm; 
    30         } 
    3126        function get_contents($file) { 
    3227                return @file_get_contents($file); 
    3328        } 
     
    6358 
    6459                return true; 
    6560        } 
    66         function chmod($file, $mode = false, $recursive = false) { 
    67                 if ( ! $mode ) 
    68                         $mode = $this->permission; 
     61        function chmod($file, $mode, $recursive = false) { 
    6962                if ( ! $this->exists($file) ) 
    7063                        return false; 
    7164                if ( ! $recursive ) 
    72                         return @chmod($file,$mode); 
     65                        return @chmod($file, $mode); 
    7366                if ( ! $this->is_dir($file) ) 
    7467                        return @chmod($file, $mode); 
    7568                //Is a directory, and we want recursive 
     
    198191 
    199192        function mkdir($path, $chmod = false, $chown = false, $chgrp = false){ 
    200193                if ( ! $chmod) 
    201                         $chmod = $this->permission; 
     194                        $chmod = FS_CHMOD_DIR; 
    202195 
    203196                if ( ! @mkdir($path, $chmod) ) 
    204197                        return false; 
     198                chmod($path, $chmod); 
    205199                if ( $chown ) 
    206200                        $this->chown($path, $chown); 
    207201                if ( $chgrp ) 
  • wp-admin/includes/class-wp-filesystem-ftpext.php

     
    2020        var $errors = null; 
    2121        var $options = array(); 
    2222 
    23         var $permission = null; 
    24  
    2523        function WP_Filesystem_FTPext($opt='') { 
    2624                $this->method = 'ftpext'; 
    2725                $this->errors = new WP_Error(); 
     
    8482                return true; 
    8583        } 
    8684 
    87         function setDefaultPermissions($perm) { 
    88                 $this->permission = $perm; 
    89         } 
    90  
    9185        function get_contents($file, $type = '', $resumepos = 0 ){ 
    9286                if( empty($type) ) 
    9387                        $type = FTP_BINARY; 
     
    139133        function chgrp($file, $group, $recursive = false ) { 
    140134                return false; 
    141135        } 
    142         function chmod($file, $mode = false, $recursive = false) { 
    143                 if( ! $mode ) 
    144                         $mode = $this->permission; 
    145                 if( ! $mode ) 
    146                         return false; 
     136        function chmod($file, $mode, $recursive = false) { 
    147137                if ( ! $this->exists($file) && ! $this->is_dir($file) ) 
    148138                        return false; 
    149139                if ( ! $recursive || ! $this->is_dir($file) ) { 
     
    153143                } 
    154144                //Is a directory, and we want recursive 
    155145                $filelist = $this->dirlist($file); 
    156                 foreach($filelist as $filename){ 
     146                foreach ( $filelist as $filename){ 
    157147                        $this->chmod($file . '/' . $filename, $mode, $recursive); 
    158148                } 
    159149                return true; 
  • wp-admin/includes/class-wp-filesystem-ftpsockets.php

     
    2020        var $errors = null; 
    2121        var $options = array(); 
    2222 
    23         var $permission = null; 
    24  
    2523        function WP_Filesystem_ftpsockets($opt = '') { 
    2624                $this->method = 'ftpsockets'; 
    2725                $this->errors = new WP_Error(); 
     
    8280                return true; 
    8381        } 
    8482 
    85         function setDefaultPermissions($perm) { 
    86                 $this->permission = $perm; 
    87         } 
    88  
    8983        function get_contents($file, $type = '', $resumepos = 0) { 
    9084                if( ! $this->exists($file) ) 
    9185                        return false; 
     
    157151                return false; 
    158152        } 
    159153 
    160         function chmod($file, $mode = false, $recursive = false ) { 
    161                 if( ! $mode ) 
    162                         $mode = $this->permission; 
    163                 if( ! $mode ) 
    164                         return false; 
     154        function chmod($file, $mode, $recursive = false ) { 
    165155                //if( ! $this->exists($file) ) 
    166156                //      return false; 
    167157                if( ! $recursive || ! $this->is_dir($file) ) { 
    168                         return $this->ftp->chmod($file,$mode); 
     158                        return $this->ftp->chmod($file, $mode); 
    169159                } 
    170160                //Is a directory, and we want recursive 
    171161                $filelist = $this->dirlist($file); 
  • wp-admin/includes/class-wp-filesystem-ssh2.php

     
    5656        var $errors = array(); 
    5757        var $options = array(); 
    5858 
    59         var $permission = 0644; 
    60  
    6159        function WP_Filesystem_SSH2($opt='') { 
    6260                $this->method = 'ssh2'; 
    6361                $this->errors = new WP_Error(); 
     
    160158                return false; 
    161159        } 
    162160 
    163         function setDefaultPermissions($perm) { 
    164                 $this->debug("setDefaultPermissions();"); 
    165                 if ( $perm ) 
    166                         $this->permission = $perm; 
    167         } 
    168  
    169161        function get_contents($file, $type = '', $resumepos = 0 ) { 
    170162                $file = ltrim($file, '/'); 
    171163                return file_get_contents('ssh2.sftp://' . $this->sftp_link . '/' . $file); 
     
    200192                return $this->run_command(sprintf('chgrp -R %o %s', $mode, escapeshellarg($file)), true); 
    201193        } 
    202194 
    203         function chmod($file, $mode = false, $recursive = false) { 
    204                 if( ! $mode ) 
    205                         $mode = $this->permission; 
    206                 if( ! $mode ) 
    207                         return false; 
     195        function chmod($file, $mode, $recursive = false) { 
    208196                if ( ! $this->exists($file) ) 
    209197                        return false; 
    210198                if ( ! $recursive || ! $this->is_dir($file) ) 
     
    315303                //Not implmented. 
    316304        } 
    317305 
    318         function mkdir($path, $chmod = null, $chown = false, $chgrp = false) { 
     306        function mkdir($path, $chmod = false, $chown = false, $chgrp = false) { 
    319307                $path = untrailingslashit($path); 
    320                 $chmod = !empty($chmod) ? $chmod : $this->permission; 
     308                if ( ! $chmod ) 
     309                        $chmod = FS_CHMOD_DIR; 
    321310                if ( ! ssh2_sftp_mkdir($this->sftp_link, $path, $chmod, true) ) 
    322311                        return false; 
    323312                if ( $chown )