diff --git a/src/wp-admin/includes/plugin.php b/src/wp-admin/includes/plugin.php index 2716bd4fef..f8ca6ea5fd 100644 --- a/src/wp-admin/includes/plugin.php +++ b/src/wp-admin/includes/plugin.php @@ -768,6 +768,11 @@ function deactivate_plugins( $plugins, $silent = false, $network_wide = null ) { } } + if ( $do_blog && wp_is_recovery_mode() ) { + list( $extension ) = explode( '/', $plugin ); + wp_paused_plugins()->delete( $extension ); + } + if ( ! $silent ) { /** * Fires as a specific plugin is being deactivated. diff --git a/src/wp-includes/theme.php b/src/wp-includes/theme.php index e688cc66fa..eb960f8004 100644 --- a/src/wp-includes/theme.php +++ b/src/wp-includes/theme.php @@ -744,6 +744,12 @@ function switch_theme( $stylesheet ) { $new_theme = wp_get_theme( $stylesheet ); $template = $new_theme->get_template(); + if ( wp_is_recovery_mode() ) { + $paused_themes = wp_paused_themes(); + $paused_themes->delete( $old_theme->get_stylesheet() ); + $paused_themes->delete( $old_theme->get_template() ); + } + update_option( 'template', $template ); update_option( 'stylesheet', $stylesheet );