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