[pull] master from GerbilSoft:master#261
Merged
Merged
Conversation
…unc64(). It's not actually used anywhere.
…lose() to mz_zip_delete(). mz_zip_delete() will return without doing anything if nullptr is passed, similar to unzClose(). unzClose() is part of the compat API, which isn't usually present in system-wide versions of MiniZip-NG.
It's similar to the compat API, but with a few extra steps. In particular, the reader isn't created automatically, and has to be deleted separately from closing the file. Memory allocation for e.g. file_info is handled differently, too.
MiniZip-NG takes UTF-8 filenames on all platforms in recent versions. Previously (pre-2.2.3), it would take UTF-16 filenames on Windows. We upgraded to MiniZip-NG 2.2.3+ in November 2017, so it was part of rom-properties 1.2. (rp_string was still in use until v1.3!)
…ipReader. We'll need to have both a stream and a reader for the RomData subclasses, since they'll be reading from an IRpFile with a custom mz_stream.
…) check. Copy/paste error that effectively broke the test. This fixes a regression from commit 4c6e770. ([libromdata/tests] GcnFstTest: Inline openZip().)
RomData_decl.hpp: New macros to use MiniZip-NG's native API instead of the compat API. mz_stream_IRpFile.cpp: mz_stream implementation using IRpFile. Similar to the unzFile implementation. RomDataFactory.cpp: Update to use MiniZip-NG's native API. NOTE: J2ME hasn't been updated yet. Since RomDataFactory now requires the new API, J2ME .jar files won't work until J2ME is updated.
RomDataFactory: Re-enable J2ME.
…m size_t to off64_t to match loadFileFromZip().
This TODO makes sense in AndroidAPK and J2ME, but in RomDataFactory, we're *opening* the ZIP file here, so it doesn't make sense.
…acros. Everything has been ported to MiniZip-NG's native API.
The DLL will now be named minizip-ng.dll (or minizip-ngd.dll).
- Update Windows delay-load handling for this change.
- Add minizip-ng.def with all of the symbol definitions. For some reason,
the MiniZip-NG headers don't explicitly export symbols. We don't want
to use CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS because that can cause a bunch
of other stuff to be exported.
- NOTE: This means the Windows build probably broke when we started
porting to MiniZip-NG's native API...
- As a side effect, this also means MiniZip's command line utilities
should build correctly on Windows now.
MiniZip-NG 2.2.4 added UTF-8 to UTF-16 filename conversion on Windows, but that isn't relevant for Linux, so I'm not going to add a minimum version for now. I may add one later if issues are found. TODO: Add MiniZip-NG to AboutTab.
N.B.: The first version of various distros to include MiniZip-NG: - Debian: 14 "Forky" (not released yet) - Ubuntu: 26.04 "Resolute" Raccoon - Fedora: 39 (possibly earlier; can't find info on prior versions)
Using the same case as FindMinizipNG.cmake.
It's essentially ABI-compatible with 9.0, though we *did* add some custom properties. (RippedBy, Version) This *shouldn't* cause any compatibility issues, since RomMetaData should simply ignore out-of-range property IDs...
…E_INTERNAL_MinizipNG . This broke all of the AppVeyor builds, and probably local builds too.
…it's not available. Check for both defined and non-zero to handle both mz_config.h and config.libc.h. This fixes building GcnFstTest on Windows. (...and the AppVeyor build)
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 subscribe to this conversation on GitHub.
Already have an account?
Sign in.
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.
See Commits and Changes for more details.
Created by
pull[bot] (v2.0.0-alpha.4)
Can you help keep this open source service alive? 💖 Please sponsor : )