Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improved 64-bit support #13

Merged
merged 7 commits into from
Jan 26, 2019
Merged

Improved 64-bit support #13

merged 7 commits into from
Jan 26, 2019

Conversation

charonn0
Copy link
Owner

This PR improves 64 bit support by changing how the stream structure is allocated and accessed. Because the alignment and member size (e.g. Int32 vs Int64) of the structure can vary depending on the OS, platform, and the compiler used to build zlib, the FlateEngine class has been changed to more fully encapsulate it. The actual size in memory of the structure is detected at runtime and the appropriate alignment, etc. is taken into account when accessing members. This allows the Inflater and Deflater subclasses to work without knowing whether they're in 32-bit or 64-bit.

@charonn0 charonn0 added enhancement Improvements that do not change the public API Inflater Low level decompression Deflater Low level compression labels Jan 26, 2019
@charonn0 charonn0 merged commit b7362ee into master Jan 26, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Deflater Low level compression enhancement Improvements that do not change the public API Inflater Low level decompression
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant