Make WordPress Core

Changeset 11668


Ignore:
Timestamp:
06/29/2009 08:24:04 PM (15 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.