@@ -177,9 +177,11 @@ public function hasItem($key)
177
177
}
178
178
179
179
foreach ($ this ->getTagVersions ([$ itemTags ]) as $ tag => $ version ) {
180
- if ($ itemTags [$ tag ] !== $ version && 1 ! == $ itemTags [$ tag ] - $ version ) {
181
- return false ;
180
+ if ($ itemTags [$ tag ] === $ version || \is_int ( $ itemTags [ $ tag ]) && \is_int ( $ version ) && 1 = == $ itemTags [$ tag ] - $ version ) {
181
+ continue ;
182
182
}
183
+
184
+ return false ;
183
185
}
184
186
185
187
return true ;
@@ -366,10 +368,11 @@ private function generateItems(iterable $items, array $tagKeys)
366
368
367
369
foreach ($ itemTags as $ key => $ tags ) {
368
370
foreach ($ tags as $ tag => $ version ) {
369
- if ($ tagVersions [$ tag ] !== $ version && 1 !== $ version - $ tagVersions [$ tag ]) {
370
- unset($ itemTags [$ key ]);
371
- continue 2 ;
371
+ if ($ tagVersions [$ tag ] === $ version || \is_int ($ version ) && \is_int ($ tagVersions [$ tag ]) && 1 === $ version - $ tagVersions [$ tag ]) {
372
+ continue ;
372
373
}
374
+ unset($ itemTags [$ key ]);
375
+ continue 2 ;
373
376
}
374
377
}
375
378
$ tagVersions = $ tagKeys = null ;
@@ -408,7 +411,7 @@ private function getTagVersions(array $tagsByKey, array &$invalidatedTags = [])
408
411
$ tags = [];
409
412
foreach ($ tagVersions as $ tag<
9B34
/span> => $ version ) {
410
413
$ tags [$ tag .static ::TAGS_PREFIX ] = $ tag ;
411
- if ($ fetchTagVersions || !isset ($ this ->knownTagVersions [$ tag ])) {
414
+ if ($ fetchTagVersions || !isset ($ this ->knownTagVersions [$ tag ]) || ! \is_int ( $ version ) ) {
412
415
$ fetchTagVersions = true ;
413
416
continue ;
414
417
}
@@ -430,6 +433,10 @@ private function getTagVersions(array $tagsByKey, array &$invalidatedTags = [])
430
433
if (isset ($ invalidatedTags [$ tag ])) {
431
434
$ invalidatedTags [$ tag ] = $ version ->set (++$ tagVersions [$ tag ]);
432
435
}
436
+ if (!\is_int ($ tagVersions [$ tag ])) {
437
+ unset($ this ->knownTagVersions [$ tag ]);
438
+ continue ;
439
+ }
433
440
$ this ->knownTagVersions [$ tag ] = [$ now , $ tagVersions [$ tag ]];
434
441
}
435
442
0 commit comments