On Mon, 15 Apr 2019, pj.fanning wrote:
I'm not very familiar with the OLE specification that POIFS implements.
Right now, we have the size parameter implemented as an int which means that
we are limited to a file size of approx 2G.

That's correct. That's a published restriction on OLE2 (CFB) files with the small block size
https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-cfb/d4c8084a-e583-473f-b2f4-4af13b3101d9

I had a look at changing the int to a long but this has a knock-on effect
for lots of classes.

And breaks most file format readers!

Is there a reason for us to stick with int sizes or should we look at
supporting long sizes (and bigger files)?

The "correct" (aka Microsoft documented) fix is to switch to the larger block size (4kb sectors) when your file gets close to 2gb. However, not all software copes with the switch...

Nick

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to