Skip to content

Commit 33867e5

Browse files
committed
Merge branch 'master' into PYTHON-4669
2 parents c36d5d5 + e6b95f6 commit 33867e5

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

41 files changed

+5819
-438
lines changed

bson/__init__.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -284,10 +284,10 @@ def _get_object_size(data: Any, position: int, obj_end: int) -> Tuple[int, int]:
284284
except struct.error as exc:
285285
raise InvalidBSON(str(exc)) from None
286286
end = position + obj_size - 1
287-
if data[end] != 0:
288-
raise InvalidBSON("bad eoo")
289287
if end >= obj_end:
290288
raise InvalidBSON("invalid object length")
289+
if data[end] != 0:
290+
raise InvalidBSON("bad eoo")
291291
# If this is the top-level document, validate the total size too.
292292
if position == 0 and obj_size != obj_end:
293293
raise InvalidBSON("invalid object length")
@@ -1180,9 +1180,10 @@ def _decode_selective(
11801180
return doc
11811181

11821182

1183-
def _array_of_documents_to_buffer(view: memoryview) -> bytes:
1183+
def _array_of_documents_to_buffer(data: Union[memoryview, bytes]) -> bytes:
11841184
# Extract the raw bytes of each document.
11851185
position = 0
1186+
view = memoryview(data)
11861187
_, end = _get_object_size(view, position, len(view))
11871188
position += 4
11881189
buffers: list[memoryview] = []

0 commit comments

Comments
 (0)