diff --git a/wp-admin/network/themes.php b/wp-admin/network/themes.php index a70d5b8404..90ef4f03a0 100644 --- a/wp-admin/network/themes.php +++ b/wp-admin/network/themes.php @@ -102,24 +102,24 @@ if ( $action ) { $themes = isset( $_REQUEST['checked'] ) ? (array) $_REQUEST['checked'] : array(); - unset( $themes[ get_option( 'stylesheet' ) ], $themes[ get_option( 'template' ) ] ); - if ( empty( $themes ) ) { wp_safe_redirect( add_query_arg( 'error', 'none', $referer ) ); exit; } + $themes = array_diff( $themes, array( get_option( 'stylesheet' ), get_option( 'template' ) ) ); + + if ( empty( $themes ) ) { + wp_safe_redirect( add_query_arg( 'error', 'main', $referer ) ); + exit; + } + $files_to_delete = $theme_info = array(); foreach ( $themes as $key => $theme ) { $theme_info[ $theme ] = wp_get_theme( $theme ); $files_to_delete = array_merge( $files_to_delete, list_files( $theme_info[ $theme ]->get_stylesheet_directory() ) ); } - if ( empty( $themes ) ) { - wp_safe_redirect( add_query_arg( 'error', 'main', $referer ) ); - exit; - } - include(ABSPATH . 'wp-admin/update.php'); $parent_file = 'themes.php';