@@ -275,21 +275,28 @@ public function process(): void {
275275 foreach ( $ this ->requests as $ key => $ request ) {
276276 // Provide a timeout response if none exists).
277277 if ( ! isset ( $ this ->responses [ $ key ] ) ) {
278- $ response = [
278+ $ this -> responses [ $ key ] = [
279279 'args ' => $ request ['args ' ],
280280 'response ' => new WP_Error (
281281 'http_request_timed_out ' ,
282282 __ ( 'The HTTP request did not receive a response before the timeout period expired. ' , 'mantle ' ),
283283 ),
284- 'stop ' => floatval ( $ request ['start ' ] + $ response ['args ' ]['timeout ' ] ),
284+ 'stop ' => floatval ( $ request ['start ' ] + ( $ request ['args ' ]['timeout ' ] ?? 0 ) ),
285285 'url ' => $ request ['url ' ],
286286 ];
287287 }
288288
289289 // Convert the response to a Http Client Response instance.
290- $ response = $ this ->responses [ $ key ]['response ' ] instanceof Response
291- ? $ this ->responses [ $ key ]['response ' ]
292- : Response::create ( $ this ->responses [ $ key ]['response ' ] );
290+ $ response = match ( true ) {
291+ $ this ->responses [ $ key ]['response ' ] instanceof Response => $ this ->responses [ $ key ]['response ' ],
292+ is_array ( $ this ->responses [ $ key ]['response ' ] ) => Response::create ( $ this ->responses [ $ key ]['response ' ] ),
293+ is_wp_error ( $ this ->responses [ $ key ]['response ' ] ) => Response::create ( $ this ->responses [ $ key ]['response ' ] ),
294+ default => null ,
295+ };
296+
297+ if ( ! $ response instanceof Response ) {
298+ continue ;
299+ }
293300
294301 $ this ->data ->requests [ $ key ] = [
295302 'args ' => $ request ['args ' ],
0 commit comments