Fix incompatible pointer to integer conversion, fatal with clang 15

Taken from upstream PRs
This commit is contained in:
jca 2023-01-10 17:57:56 +00:00
parent a88895410f
commit ffbebc03c9
2 changed files with 25 additions and 0 deletions

View File

@ -5,6 +5,7 @@ CATEGORIES= archivers
GH_ACCOUNT = gdraheim
GH_PROJECT = zziplib
GH_TAGNAME = v0.13.72
REVISION = 0
SHARED_LIBS += zzip 16.0 # 0.0
SHARED_LIBS += zzipfseeko 14.0 # 0.0

View File

@ -0,0 +1,24 @@
error: incompatible pointer to integer conversion
https://github.com/gdraheim/zziplib/pull/141/commits/38e4d5f561318fa825e6544c2ef55ac5899c81b0
Index: zzip/mmapped.c
--- zzip/mmapped.c.orig
+++ zzip/mmapped.c
@@ -661,7 +661,7 @@ zzip_disk_entry_fopen(ZZIP_DISK * disk, ZZIP_DISK_ENTR
___ /* a ZIP64 extended block may follow. */
size_t csize = zzip_file_header_csize(header);
- off_t offset = zzip_file_header_to_data(header);
+ size_t offset = zzip_file_header_sizeto_end(header);
if (csize == 0xFFFFu) {
struct zzip_extra_zip64* zip64 =
zzip_file_header_to_extras(header);
@@ -682,7 +682,7 @@ zzip_disk_entry_fopen(ZZIP_DISK * disk, ZZIP_DISK_ENTR
file->zlib.zalloc = Z_NULL;
file->zlib.zfree = Z_NULL;
file->zlib.avail_in = csize;
- file->zlib.next_in = offset;
+ file->zlib.next_in = (Bytef *)header + offset;
____;
DBG2("compressed size %i", (int) file->zlib.avail_in);