From b875264a73a3d3134f29bb1766f0efdd05ca2c7c Mon Sep 17 00:00:00 2001 From: John Blackbourn Date: Thu, 8 Sep 2016 13:44:32 +0000 Subject: [PATCH] Formatting: Don't send an HTTP status code in `wp_send_json()` by default. This avoids clobbering an HTTP status code that may have been set prior to calling this function. Props westonruter See #35666 git-svn-id: https://develop.svn.wordpress.org/trunk@38576 602fd350-edb4-49c9-b593-d223f7449a82 --- src/wp-includes/functions.php | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/wp-includes/functions.php b/src/wp-includes/functions.php index bcb930e183..11645a842a 100644 --- a/src/wp-includes/functions.php +++ b/src/wp-includes/functions.php @@ -3101,9 +3101,11 @@ function _wp_json_prepare_data( $data ) { * then print and die. * @param int $status_code The HTTP status code to output. */ -function wp_send_json( $response, $status_code = 200 ) { +function wp_send_json( $response, $status_code = null ) { @header( 'Content-Type: application/json; charset=' . get_option( 'blog_charset' ) ); - status_header( $status_code ); + if ( null !== $status_code ) { + status_header( $status_code ); + } echo wp_json_encode( $response ); if ( wp_doing_ajax() ) wp_die(); @@ -3120,7 +3122,7 @@ function wp_send_json( $response, $status_code = 200 ) { * @param mixed $data Data to encode as JSON, then print and die. * @param int $status_code The HTTP status code to output. */ -function wp_send_json_success( $data = null, $status_code = 200 ) { +function wp_send_json_success( $data = null, $status_code = null ) { $response = array( 'success' => true ); if ( isset( $data ) ) @@ -3144,7 +3146,7 @@ function wp_send_json_success( $data = null, $status_code = 200 ) { * @param mixed $data Data to encode as JSON, then print and die. * @param int $status_code The HTTP status code to output. */ -function wp_send_json_error( $data = null, $status_code = 200 ) { +function wp_send_json_error( $data = null, $status_code = null ) { $response = array( 'success' => false ); if ( isset( $data ) ) {