Bootstrap/Load: Prevent PHP errors when a drop-in triggers fatal error protection.
When a drop-in (such as `advanced-cache.php`) contains a PHP error, additional PHP errors are caused when displaying the error protection screen because `load_default_textdomain()` and `WP_Error` are not yet available. Though recovery mode is not supported for `mu-plugins` and drop-ins, fatal error protection is. This change ensures the error screen is displayed when a fatal error is encountered within a drop-in and not a white screen. Props TimothyBlynJacobs, spacedmonkey, daxelrod. Fixes #47265. Built from https://develop.svn.wordpress.org/trunk@45311 git-svn-id: http://core.svn.wordpress.org/trunk@45122 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
parent
5173099abc
commit
ac095904da
|
@ -37,7 +37,7 @@ class WP_Fatal_Error_Handler {
|
|||
return;
|
||||
}
|
||||
|
||||
if ( ! isset( $GLOBALS['wp_locale'] ) ) {
|
||||
if ( ! isset( $GLOBALS['wp_locale'] ) && function_exists( 'load_default_textdomain' ) ) {
|
||||
load_default_textdomain();
|
||||
}
|
||||
|
||||
|
@ -165,6 +165,10 @@ class WP_Fatal_Error_Handler {
|
|||
require_once ABSPATH . WPINC . '/functions.php';
|
||||
}
|
||||
|
||||
if ( ! class_exists( 'WP_Error' ) ) {
|
||||
require_once ABSPATH . WPINC . '/class-wp-error.php';
|
||||
}
|
||||
|
||||
if ( is_protected_endpoint() ) {
|
||||
$message = __( 'The site is experiencing technical difficulties. Please check your site admin email inbox for instructions.' );
|
||||
} else {
|
||||
|
|
|
@ -13,7 +13,7 @@
|
|||
*
|
||||
* @global string $wp_version
|
||||
*/
|
||||
$wp_version = '5.3-alpha-45310';
|
||||
$wp_version = '5.3-alpha-45311';
|
||||
|
||||
/**
|
||||
* Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.
|
||||
|
|
Loading…
Reference in New Issue