WordPress.org

Make WordPress Core

Ticket #39647: patch.39647

File patch.39647, 1.3 KB (added by ramon fincken, 17 months ago)

patch.39647

Line 
1Index: wp-includes/functions.php
2===================================================================
3--- wp-includes/functions.php   (revision 45555)
4+++ wp-includes/functions.php   (working copy)
5@@ -3110,6 +3110,10 @@
6                        header( 'Content-Type: text/html; charset=utf-8' );
7                        status_header( $r['response'] );
8                        nocache_headers();
9+           
10+            if( isset( $r['last_error_message'] ) && $r['last_error_message']) {
11+                header( 'X-WP-lasterror-message: '.$r['last_error_message'] );
12+            }
13                }
14 
15                $text_direction = $r['text_direction'];
16@@ -3509,6 +3513,12 @@
17 
18        $args = wp_parse_args( $args, $defaults );
19 
20+       
21+    // Early
22+    if( $message instanceof WP_Error && isset( $message->error_data['internal_server_error']['error']['message'] ) ) {
23+        $args['last_error_message'] = $message->error_data['internal_server_error']['error']['message'];
24+    }
25+           
26        if ( function_exists( 'is_wp_error' ) && is_wp_error( $message ) ) {
27                if ( ! empty( $message->errors ) ) {
28                        $errors = array();
29@@ -3533,6 +3543,9 @@
30                                $title = $errors[0]['data']['title'];
31                        }
32 
33+            if( isset( $errors[0][0] ) ) {
34+                $args['last_error'] = array_values( $errors[0][0] );
35+            }
36                        unset( $errors[0] );
37                        $args['additional_errors'] = array_values( $errors );
38                } else {