WordPress.org

Make WordPress Core

Ticket #24049: 24049v2.diff

File 24049v2.diff, 1.2 KB (added by MattyRob, 3 years ago)
  • wp-admin/includes/plugin.php

     
    185185function get_plugin_files($plugin) { 
    186186        $plugin_file = WP_PLUGIN_DIR . '/' . $plugin; 
    187187        $dir = dirname($plugin_file); 
    188         $plugin_files = array($plugin); 
     188        $plugin_files = array(); 
     189        $plugin_basedir = plugin_basename( $dir ); 
    189190        if ( is_dir($dir) && $dir != WP_PLUGIN_DIR ) { 
    190191                $plugins_dir = @ opendir( $dir ); 
    191192                if ( $plugins_dir ) { 
     
    198199                                                while (($subfile = readdir( $plugins_subdir ) ) !== false ) { 
    199200                                                        if ( substr($subfile, 0, 1) == '.' ) 
    200201                                                                continue; 
    201                                                         $plugin_files[] = plugin_basename("$dir/$file/$subfile"); 
     202                                                        $plugin_files[] = "$plugin_basedir/$file/$subfile"; 
    202203                                                } 
    203204                                                @closedir( $plugins_subdir ); 
    204205                                        } 
    205206                                } else { 
    206                                         if ( plugin_basename("$dir/$file") != $plugin ) 
    207                                                 $plugin_files[] = plugin_basename("$dir/$file"); 
     207                                        if ( "$plugin_basedir/$file" != $plugin ) 
     208                                                $plugin_files[] = "$plugin_basedir/$file"; 
    208209                                } 
    209210                        } 
    210211                        @closedir( $plugins_dir ); 
    211212                } 
    212213        } 
    213  
     214        sort( $plugin_files ); 
     215        array_unshift( $plugin_files, $plugin ); 
    214216        return $plugin_files; 
    215217} 
    216218