WordPress.org

Make WordPress Core

Changeset 11668


Ignore:
Timestamp:
06/29/09 20:24:04 (5 years ago)
Author:
ryan
Message:

Proper permissions for newly created files. Props azaozz. fixes #10170 for 2.8.1

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2.8/wp-admin/includes/class-wp-filesystem-direct.php

    r10919 r11668  
    2121        $this->method = 'direct'; 
    2222        $this->errors = new WP_Error(); 
    23         $this->permission = umask(); 
    2423    } 
    2524    function connect() { 
     
    6564    } 
    6665    function chmod($file, $mode = false, $recursive = false) { 
    67         if ( ! $mode ) 
    68             $mode = $this->permission; 
    6966        if ( ! $this->exists($file) ) 
    7067            return false; 
    71         if ( ! $recursive ) 
    72             return @chmod($file,$mode); 
     68 
     69        if ( ! $mode ) { 
     70            if ( $this->permission ) 
     71                $mode = $this->permission; 
     72            elseif ( $this->is_file($file) ) 
     73                $mode = FS_CHMOD_FILE; 
     74            elseif ( $this->is_dir($file) ) 
     75                $mode = FS_CHMOD_DIR; 
     76            else 
     77                return false;    
     78        } 
     79 
     80        if ( ! $recursive ) 
     81            return @chmod($file, $mode); 
    7382        if ( ! $this->is_dir($file) ) 
    7483            return @chmod($file, $mode); 
     
    198207 
    199208    function mkdir($path, $chmod = false, $chown = false, $chgrp = false){ 
    200         if ( ! $chmod) 
    201             $chmod = $this->permission; 
    202  
    203         if ( ! @mkdir($path, $chmod) ) 
    204             return false; 
     209        if ( ! @mkdir($path) ) 
     210            return false; 
     211        $this->chmod($path, $chmod); 
    205212        if ( $chown ) 
    206213            $this->chown($path, $chown); 
Note: See TracChangeset for help on using the changeset viewer.