WordPress.org

Make WordPress Core

Ticket #36455: 36455.7.diff

File 36455.7.diff, 1.9 KB (added by nextendweb, 3 months ago)

36455.7.diff

  • wp-admin/includes/file.php

     
    17271727        $from = trailingslashit( $from );
    17281728        $to   = trailingslashit( $to );
    17291729
     1730        $opcacheEnabled = function_exists( 'opcache_invalidate' );
     1731
    17301732        foreach ( (array) $dirlist as $filename => $fileinfo ) {
    17311733                if ( in_array( $filename, $skip_list, true ) ) {
    17321734                        continue;
     
    17401742                                        return new WP_Error( 'copy_failed_copy_dir', __( 'Could not copy file.' ), $to . $filename );
    17411743                                }
    17421744                        }
     1745                        if ($opcacheEnabled && in_array( pathinfo( $filename, PATHINFO_EXTENSION ), array( 'php', 'phtml' ) ) ) {
     1746                                opcache_invalidate( $to . $filename );
     1747                        }
    17431748                } elseif ( 'd' == $fileinfo['type'] ) {
    17441749                        if ( ! $wp_filesystem->is_dir( $to . $filename ) ) {
    17451750                                if ( ! $wp_filesystem->mkdir( $to . $filename, FS_CHMOD_DIR ) ) {
  • wp-admin/includes/update-core.php

     
    13381338        $from = trailingslashit( $from );
    13391339        $to   = trailingslashit( $to );
    13401340
     1341    $opcacheEnabled = function_exists( 'opcache_invalidate' );
     1342
    13411343        foreach ( (array) $dirlist as $filename => $fileinfo ) {
    13421344                if ( in_array( $filename, $skip_list, true ) ) {
    13431345                        continue;
     
    13511353                                        return new WP_Error( 'copy_failed__copy_dir', __( 'Could not copy file.' ), $to . $filename );
    13521354                                }
    13531355                        }
     1356                        if ($opcacheEnabled && in_array( pathinfo( $filename, PATHINFO_EXTENSION ), array( 'php', 'phtml' ) ) ) {
     1357                                opcache_invalidate( $to . $filename );
     1358                        }
    13541359                } elseif ( 'd' == $fileinfo['type'] ) {
    13551360                        if ( ! $wp_filesystem->is_dir( $to . $filename ) ) {
    13561361                                if ( ! $wp_filesystem->mkdir( $to . $filename, FS_CHMOD_DIR ) ) {