WordPress.org

Make WordPress Core

Ticket #10170: 10170.diff

File 10170.diff, 6.7 KB (added by dd32, 9 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 )