3MFConsortium / spec_core

3MF's Core specification
BSD 2-Clause "Simplified" License
55 stars 16 forks source link

Issue with Microsoft 3D Builder #68

Open martinweismann opened 1 year ago

martinweismann commented 1 year ago

We have found out that Microsoft 3D Builder accepts ZIP64 encoded 3MFs if the following conditions are fulfilled:

Streaming extension is NOT used together with ZIP64 extension.
Size of the ZIP64 archive after compression is not bigger than 4GiB.
ZIP64 extension block has to be filled in both the Local file header and Central directory file header, even though that is not strictly required by the ZIP spec.
ZIP64 extension block in Central directory file header must not be longer than 20 bytes. For example, DotNetZip produces a longer record, and such ZIP64 is not accepted by Microsoft 3D Builder.

While MS 3D builder does not refuse these ZIP64 files, if the uncompressed archive is larger than 4 GiB, MS 3D builder hangs when loading such a file.

From @bubnikv https://github.com/3MFConsortium/spec_core/issues/39.