Make WordPress Core


Ignore:
Timestamp:
08/14/2025 09:14:18 PM (13 months ago)
Author:
SergeyBiryukov
Message:

REST API: Correct error handling in WP_REST_Server::serve_batch_request_v1().

This aims to avoid a fatal error when hitting the batch request endpoint with a malformed URL.

Follow-up to [49252].

Props bor0, SirLouen, SergeyBiryukov.
Fixes #63502.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/wp-includes/rest-api/class-wp-rest-server.php

    r60177 r60635  
    17481748
    17491749                foreach ( $requests as $single_request ) {
     1750                        if ( is_wp_error( $single_request ) ) {
     1751                                $has_error    = true;
     1752                                $validation[] = $single_request;
     1753                                continue;
     1754                        }
     1755
    17501756                        $match     = $this->match_request_to_handler( $single_request );
    17511757                        $matches[] = $match;
     
    18181824
    18191825                foreach ( $requests as $i => $single_request ) {
     1826                        if ( is_wp_error( $single_request ) ) {
     1827                                $result      = $this->error_to_response( $single_request );
     1828                                $responses[] = $this->envelope_response( $result, false )->get_data();
     1829                                continue;
     1830                        }
     1831
    18201832                        $clean_request = clone $single_request;
    18211833                        $clean_request->set_url_params( array() );
Note: See TracChangeset for help on using the changeset viewer.