File tree Expand file tree Collapse file tree 2 files changed +15
-2
lines changed Expand file tree Collapse file tree 2 files changed +15
-2
lines changed Original file line number Diff line number Diff line change @@ -1064,8 +1064,7 @@ public function isNotModified(Request $request): bool
10641064 $ lastModified = $ this ->headers ->get ('Last-Modified ' );
10651065 $ modifiedSince = $ request ->headers ->get ('If-Modified-Since ' );
10661066
1067- if ($ ifNoneMatchEtags = $ request ->getETags ()) {
1068- $ etag = $ this ->getEtag ();
1067+ if (($ ifNoneMatchEtags = $ request ->getETags ()) && (null !== $ etag = $ this ->getEtag ())) {
10691068 if (0 == strncmp ($ etag , 'W/ ' , 2 )) {
10701069 $ etag = substr ($ etag , 2 );
10711070 }
Original file line number Diff line number Diff line change @@ -275,6 +275,20 @@ public function testIsNotModifiedIfModifiedSinceAndEtagWithoutLastModified()
275275 $ this ->assertFalse ($ response ->isNotModified ($ request ));
276276 }
277277
278+ public function testIfNoneMatchWithoutETag ()
279+ {
280+ $ request = new Request ();
281+ $ request ->headers ->set ('If-None-Match ' , 'randomly_generated_etag ' );
282+
283+ $ this ->assertFalse ((new Response ())->isNotModified ($ request ));
284+
285+ // Test wildcard
286+ $ request = new Request ();
287+ $ request ->headers ->set ('If-None-Match ' , '* ' );
288+
289+ $ this ->assertFalse ((new Response ())->isNotModified ($ request ));
290+ }
291+
278292 public function testIsValidateable ()
279293 {
280294 $ response = new Response ('' , 200 , ['Last-Modified ' => $ this ->createDateTimeOneHourAgo ()->format (\DATE_RFC2822 )]);
You can’t perform that action at this time.
0 commit comments