summaryrefslogtreecommitdiff
path: root/jsonschema/_validators.py
diff options
context:
space:
mode:
authorJulian Berman <Julian@GrayVines.com>2021-08-24 10:21:41 +0100
committerJulian Berman <Julian@GrayVines.com>2021-08-24 10:21:41 +0100
commit53694e776adfc0b3f8b49101d1477f091c1dc0d9 (patch)
tree5a6590b272280aad273a6398a8b70ee1609e988a /jsonschema/_validators.py
parent60d689ca25012cc223166407f73348c86d13a1b4 (diff)
downloadjsonschema-53694e776adfc0b3f8b49101d1477f091c1dc0d9.tar.gz
Fix items' instance path as well.
Diffstat (limited to 'jsonschema/_validators.py')
-rw-r--r--jsonschema/_validators.py9
1 files changed, 6 insertions, 3 deletions
diff --git a/jsonschema/_validators.py b/jsonschema/_validators.py
index 49f0145..4adc3c2 100644
--- a/jsonschema/_validators.py
+++ b/jsonschema/_validators.py
@@ -1,5 +1,4 @@
from fractions import Fraction
-from itertools import islice
from urllib.parse import urldefrag, urljoin
import re
@@ -72,8 +71,12 @@ def items(validator, items, instance, schema):
message = f"Expected at most {prefix} items, but found {len(instance)}"
yield ValidationError(message)
else:
- for item in islice(instance, prefix, None):
- yield from validator.descend(instance=item, schema=items)
+ for index in range(prefix, len(instance)):
+ yield from validator.descend(
+ instance=instance[index],
+ schema=items,
+ path=index,
+ )
def additionalItems(validator, aI, instance, schema):