Make WordPress Core


Ignore:
Timestamp:
12/22/2025 01:16:28 AM (6 months ago)
Author:
westonruter
Message:

Filesystem API: Resolve FIXME comment for WP_Filesystem_Direct::getchmod() by explicitly returning '0' in error case.

Developed in https://github.com/WordPress/wordpress-develop/pull/10637

Follow-up to [11831].

Props vietcgi, westonruter.
See #10304.
Fixes #64426.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/wp-admin/includes/class-wp-filesystem-direct.php

    r57644 r61398  
    250250     * Gets the permissions of the specified file or filepath in their octal format.
    251251     *
    252      * FIXME does not handle errors in fileperms()
    253      *
    254252     * @since 2.5.0
    255253     *
    256254     * @param string $file Path to the file.
    257      * @return string Mode of the file (the last 3 digits).
     255     * @return string Mode of the file (the last 3 digits), or the string "0" on failure.
    258256     */
    259257    public function getchmod( $file ) {
    260         return substr( decoct( @fileperms( $file ) ), -3 );
     258        $perms = @fileperms( $file );
     259        if ( false === $perms ) {
     260            return '0';
     261        }
     262
     263        return substr( decoct( $perms ), -3 );
    261264    }
    262265
Note: See TracChangeset for help on using the changeset viewer.