iNOISSUE fix build issue with pack200 on rhel 7.6
This commit is contained in:
		| @@ -23,6 +23,8 @@ | ||||
|  * questions. | ||||
|  */ | ||||
|  | ||||
| #pragma once | ||||
|  | ||||
| // Global Structures | ||||
| struct jar; | ||||
| struct gunzip; | ||||
| @@ -33,6 +35,8 @@ struct cpindex; | ||||
| struct inner_class; | ||||
| struct value_stream; | ||||
|  | ||||
| typedef int64_t (*read_input_fn_t)(unpacker *self, void *buf, int64_t minlen, int64_t maxlen); | ||||
|  | ||||
| struct cpindex | ||||
| { | ||||
|     uint32_t len; | ||||
| @@ -186,8 +190,6 @@ struct unpacker | ||||
|     int unsized_bytes_read; | ||||
|  | ||||
|     // callback to read at least one byte, up to available input | ||||
|     typedef int64_t (*read_input_fn_t)(unpacker *self, void *buf, int64_t minlen, | ||||
|                                        int64_t maxlen); | ||||
|     read_input_fn_t read_input_fn; | ||||
|  | ||||
|     // archive header fields | ||||
|   | ||||
| @@ -444,7 +444,7 @@ static int64_t read_input_via_gzip(unpacker *u, void *buf, int64_t minlen, int64 | ||||
|     char *bufptr = (char *)buf; | ||||
|     char *inbuf = u->gzin->inbuf; | ||||
|     size_t inbuflen = sizeof(u->gzin->inbuf); | ||||
|     unpacker::read_input_fn_t read_gzin_fn = (unpacker::read_input_fn_t)u->gzin->read_input_fn; | ||||
|     read_input_fn_t read_gzin_fn = u->gzin->read_input_fn; | ||||
|     z_stream &zs = *(z_stream *)u->gzin->zstream; | ||||
|     while (numread < minlen) | ||||
|     { | ||||
| @@ -507,7 +507,7 @@ void gunzip::init(unpacker *u_) | ||||
|     BYTES_OF(*this).clear(); | ||||
|     u = u_; | ||||
|     assert(u->gzin == nullptr); // once only, please | ||||
|     read_input_fn = (void *)u->read_input_fn; | ||||
|     read_input_fn = u->read_input_fn; | ||||
|     zstream = NEW(z_stream, 1); | ||||
|     u->gzin = this; | ||||
|     u->read_input_fn = read_input_via_gzip; | ||||
| @@ -574,7 +574,7 @@ void gunzip::free() | ||||
| { | ||||
|     assert(u->gzin == this); | ||||
|     u->gzin = nullptr; | ||||
|     u->read_input_fn = (unpacker::read_input_fn_t) this->read_input_fn; | ||||
|     u->read_input_fn = this->read_input_fn; | ||||
|     inflateEnd((z_stream *)zstream); | ||||
|     ::free(zstream); | ||||
|     zstream = nullptr; | ||||
| @@ -583,7 +583,7 @@ void gunzip::free() | ||||
|  | ||||
| void gunzip::read_fixed_field(char *buf, size_t buflen) | ||||
| { | ||||
|     int64_t nr = ((unpacker::read_input_fn_t)read_input_fn)(u, buf, buflen, buflen); | ||||
|     int64_t nr = read_input_fn(u, buf, buflen, buflen); | ||||
|     if ((size_t)nr != buflen) | ||||
|         unpack_abort("short stream header"); | ||||
| } | ||||
|   | ||||
| @@ -22,12 +22,14 @@ | ||||
|  * or visit www.oracle.com if you need additional information or have any | ||||
|  * questions. | ||||
|  */ | ||||
| #pragma once | ||||
|  | ||||
| #include <stdint.h> | ||||
| typedef unsigned short ushort; | ||||
| typedef unsigned int uint32_t; | ||||
| typedef unsigned char uchar; | ||||
|  | ||||
| struct unpacker; | ||||
| #include "unpack.h" | ||||
|  | ||||
| struct jar | ||||
| { | ||||
| @@ -95,7 +97,7 @@ struct gunzip | ||||
|     // pointer to outer unpacker, for error checks etc. | ||||
|     unpacker *u; | ||||
|  | ||||
|     void *read_input_fn; // underlying \bchar\b stream | ||||
|     read_input_fn_t read_input_fn; // underlying \bchar\b stream | ||||
|     void *zstream;       // inflater state | ||||
|     char inbuf[1 << 14]; // input buffer | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Petr Mrázek
					Petr Mrázek