WordPress.org

Make WordPress Core

Ticket #15134: filesystem.patch

File filesystem.patch, 1.7 KB (added by vladimir_kolesnikov, 4 years ago)
  • wp-admin/includes/class-wp-filesystem-direct.php

     
    221221                        return false; 
    222222                $file = str_replace('\\', '/', $file); //for win32, occasional problems deleteing files otherwise 
    223223 
     224                if ( $this->is_link(untrailingslashit($file)) ) 
     225                        return @unlink(untrailingslashit($file)); 
    224226                if ( $this->is_file($file) ) 
    225227                        return @unlink($file); 
    226228                if ( ! $recursive && $this->is_dir($file) ) 
     
    253255                return @is_dir($path); 
    254256        } 
    255257 
     258        function is_link($path) { 
     259                return @is_link($path); 
     260        } 
     261 
    256262        function is_readable($file) { 
    257263                return @is_readable($file); 
    258264        } 
  • wp-admin/includes/class-wp-filesystem-ssh2.php

     
    252252        } 
    253253 
    254254        function delete($file, $recursive = false) { 
     255                if ( $this->is_link(untrailingslashit($file)) ) 
     256                        return ssh2_sftp_unlink($this->sftp_link, untrailingslashit($file)); 
    255257                if ( $this->is_file($file) ) 
    256258                        return ssh2_sftp_unlink($this->sftp_link, $file); 
    257259                if ( ! $recursive ) 
     
    280282                return is_dir('ssh2.sftp://' . $this->sftp_link . '/' . $path); 
    281283        } 
    282284 
     285        function is_link($path) { 
     286                $path = trim($path, '/'); 
     287                return is_link('ssh2.sftp://' . $this->sftp_link . '/' . $path); 
     288        } 
     289 
    283290        function is_readable($file) { 
    284291                $file = ltrim($file, '/'); 
    285292                return is_readable('ssh2.sftp://' . $this->sftp_link . '/' . $file);