Open
Conversation
The current zlib implementation is "mostly" fine, but some edge cases are not simulated properly. This commit effectively puts it to parity with the C++ version.
Collaborator
|
Thanks for the PR. I don't think we want the ZStream change (because of Console output - is an exception warranted?), and is the ZInputStream change to the buffer size really needed? Is it possible to provide example input/output cases that fail without this PR? |
Author
|
You are welcome. This console output was used for debugging, it is possible I can disable the console and add the exception instead. Yes, it was in my testing, the buffer is too large compared to what is used on the c++ dll, and this caused an error when unpacking said data. Yes, the best way te verify is cloning the repo upper, and using the HomeWebTools to unpack a .sdat file. However I will work on a simpler app for the sake of this pr for easy testing, but it may take a week. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The current zlib implementation is "mostly" fine, but some edge cases are not simulated properly.
This commit effectively puts it to parity with the C++ version, and allows this implementation to be used to open and compress "EdgeZlib" files used by various PS3 games.
How has this been tested?
Compression/decompression of EdgeZlib files, Quazal packets and deflate http data.
Check this repo (where I used this change to remove a whoping 3 Zlib duplicata libraries (because none was right...)): https://github.com/GitHubProUser67/MultiServer3/tree/Super-Branch/BackendServices/CastleLibrary
Checklist before requesting a review