@@ -181,11 +181,14 @@ public function isOriginAllowed(Request $request): bool
181181
182182 $ origin = $ request ->headers ->get ('Origin ' );
183183
184+ if ($ origin === null ) {
185+ return false ;
186+ }
187+
184188 if (in_array ($ origin , $ this ->options ['allowedOrigins ' ])) {
185189 return true ;
186190 }
187191
188- /** @var string $pattern */
189192 foreach ($ this ->options ['allowedOriginsPatterns ' ] as $ pattern ) {
190193 if (preg_match ($ pattern , $ origin )) {
191194 return true ;
@@ -219,7 +222,7 @@ private function configureAllowedOrigin(Response $response, Request $request): v
219222 } else {
220223 // For dynamic headers, set the requested Origin header when set and allowed
221224 if ($ this ->isCorsRequest ($ request ) && $ this ->isOriginAllowed ($ request )) {
222- $ response ->headers ->set ('Access-Control-Allow-Origin ' , $ request ->headers ->get ('Origin ' ));
225+ $ response ->headers ->set ('Access-Control-Allow-Origin ' , ( string ) $ request ->headers ->get ('Origin ' ));
223226 }
224227
225228 $ this ->varyHeader ($ response , 'Origin ' );
@@ -250,7 +253,7 @@ private function configureAllowedMethods(Response $response, Request $request):
250253 private function configureAllowedHeaders (Response $ response , Request $ request ): void
251254 {
252255 if ($ this ->options ['allowAllHeaders ' ] === true ) {
253- $ allowHeaders = $ request ->headers ->get ('Access-Control-Request-Headers ' );
256+ $ allowHeaders = ( string ) $ request ->headers ->get ('Access-Control-Request-Headers ' );
254257 $ this ->varyHeader ($ response , 'Access-Control-Request-Headers ' );
255258 } else {
256259 $ allowHeaders = implode (', ' , $ this ->options ['allowedHeaders ' ]);
0 commit comments