WordPress.org

Make WordPress Core

Ticket #8420: 8420.diff

File 8420.diff, 1.9 KB (added by kapeels, 3 years ago)
  • wp-includes/functions.php

     
    26602660        if ( function_exists( 'apply_filters' ) ) { 
    26612661                $function = apply_filters( 'wp_die_handler', '_default_wp_die_handler'); 
    26622662        }else { 
     2663            if(defined('DOING_AJAX') && DOING_AJAX) 
     2664                $function = '_ajax_wp_die_handler';             
     2665            else 
    26632666                $function = '_default_wp_die_handler'; 
    26642667        } 
    26652668 
     
    27582761        die(); 
    27592762} 
    27602763 
     2764function _ajax_die_handler_filter() {  
     2765    return '_ajax_wp_die_handler';  
     2766} 
     2767 
    27612768/** 
     2769 * Kill WordPress execution and send AJAX response with error message. 
     2770 * 
     2771 * This is AJAX-version of the default handler for wp_die 
     2772 * 
     2773 * @since 3.0.0 
     2774 * @access private 
     2775 * 
     2776 * @param string $message Error message. 
     2777 * @param string $title Error title. 
     2778 * @param string|array $args Optional arguements to control behaviour. 
     2779 */ 
     2780function _ajax_wp_die_handler( $message, $title = '', $args = array() ) {     
     2781        $defaults = array( 'response' => 500 ); 
     2782        $r = wp_parse_args($args, $defaults);            
     2783        if ( !headers_sent() ) { 
     2784                status_header( $r['response'] ); 
     2785        } 
     2786        $resp   =   new WP_Ajax_Response( array( 
     2787                        'what' => 'autosave', 
     2788                        'id' => $message                         
     2789                ) );           
     2790        $resp->send();         
     2791        die(); 
     2792} 
     2793/** 
    27622794 * Retrieve the WordPress home page URL. 
    27632795 * 
    27642796 * If the constant named 'WP_HOME' exists, then it willl be used and returned by 
  • wp-admin/admin-ajax.php

     
    2121 
    2222require_once('./includes/admin.php'); 
    2323@header('Content-Type: text/html; charset=' . get_option('blog_charset')); 
     24 
     25add_filter('wp_die_handler','_ajax_die_handler_filter'); 
     26 
    2427send_nosniff_header(); 
    2528 
    2629do_action('admin_init');