Skip to content

Commit c04ab6f

Browse files
authored
Merge pull request #266 from collective/fix-pdata-chunks
fix: concatenate all `Pdata` chunks
2 parents 753dfb1 + cfa18d0 commit c04ab6f

2 files changed

Lines changed: 12 additions & 6 deletions

File tree

CHANGES.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ Changelog
55
1.16 (unreleased)
66
-----------------
77

8-
- Nothing changed yet.
8+
- Fixed data extraction to concatenate all `Pdata` chunks. [@jnptk]
99

1010

1111
1.15 (2025-07-15)

src/collective/exportimport/serializer.py

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -270,11 +270,17 @@ def __call__(self):
270270
file_obj = self.field.get(self.context)
271271
if not file_obj:
272272
return None
273-
data = (
274-
file_obj.data.data
275-
if isinstance(file_obj.data, Pdata)
276-
else file_obj.data
277-
)
273+
274+
data = None
275+
if isinstance(file_obj.data, Pdata):
276+
data = b""
277+
pdata = file_obj.data
278+
while pdata is not None:
279+
data += pdata.data
280+
pdata = pdata.next
281+
else:
282+
data = file_obj.data
283+
278284
if len(data) > FILE_SIZE_WARNING:
279285
logger.info(
280286
u"Large file for {}: {}".format(

0 commit comments

Comments
 (0)