diff options
author | Akira Kakuto <kakuto@fuk.kindai.ac.jp> | 2018-07-16 23:33:39 +0000 |
---|---|---|
committer | Akira Kakuto <kakuto@fuk.kindai.ac.jp> | 2018-07-16 23:33:39 +0000 |
commit | bb3faa4d6bfce9baecc84539f560d8e518228e04 (patch) | |
tree | 2a458af9d27cd5c42b4f8de471eaeabbb1fb1e1a /Build/source/libs/libpng/libpng-src/contrib | |
parent | 4712a2a4209de069ba87751cf2a4043fc459a8cf (diff) |
libpng 1.6.35
git-svn-id: svn://tug.org/texlive/trunk@48212 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/libs/libpng/libpng-src/contrib')
61 files changed, 132 insertions, 299 deletions
diff --git a/Build/source/libs/libpng/libpng-src/contrib/conftest/pngcp.dfa b/Build/source/libs/libpng/libpng-src/contrib/conftest/pngcp.dfa index 15a856e2fb9..acf200d325d 100644 --- a/Build/source/libs/libpng/libpng-src/contrib/conftest/pngcp.dfa +++ b/Build/source/libs/libpng/libpng-src/contrib/conftest/pngcp.dfa @@ -33,7 +33,7 @@ option WRITE_16BIT on option WRITE_FILTER on # pngcp needs this to preserve unknown chunks, switching all these on means that -# pngcp can work without explicit known chunk reading suppport +# pngcp can work without explicit known chunk reading support option UNKNOWN_CHUNKS on option SET_UNKNOWN_CHUNKS on option HANDLE_AS_UNKNOWN on diff --git a/Build/source/libs/libpng/libpng-src/contrib/examples/iccfrompng.c b/Build/source/libs/libpng/libpng-src/contrib/examples/iccfrompng.c index 603037e7097..00056abfd71 100644 --- a/Build/source/libs/libpng/libpng-src/contrib/examples/iccfrompng.c +++ b/Build/source/libs/libpng/libpng-src/contrib/examples/iccfrompng.c @@ -10,7 +10,7 @@ * without processing the image. Notice that some header information may occur * after the image data. Textual data and comments are an example; the approach * in this file won't work reliably for such data because it only looks for the - * information in the section of the file that preceeds the image data. + * information in the section of the file that precedes the image data. * * Compile and link against libpng and zlib, plus anything else required on the * system you use. diff --git a/Build/source/libs/libpng/libpng-src/contrib/libtests/makepng.c b/Build/source/libs/libpng/libpng-src/contrib/libtests/makepng.c index 9dff0484605..e58a61d0234 100644 --- a/Build/source/libs/libpng/libpng-src/contrib/libtests/makepng.c +++ b/Build/source/libs/libpng/libpng-src/contrib/libtests/makepng.c @@ -950,7 +950,7 @@ write_png(const char **name, FILE *fp, int color_type, int bit_depth, int passes = 1; # endif /* !WRITE_INTERLACING */ int pass; - png_size_t rowbytes = png_get_rowbytes(png_ptr, info_ptr); + size_t rowbytes = png_get_rowbytes(png_ptr, info_ptr); row = malloc(rowbytes); @@ -1094,7 +1094,7 @@ load_file(png_const_charp name, png_bytepp result) return 0; } -static png_size_t +static size_t load_fake(png_charp param, png_bytepp profile) { char *endptr = NULL; @@ -1164,7 +1164,7 @@ insert_iCCP(png_structp png_ptr, png_infop info_ptr, int nparams, { case '<': { - png_size_t filelen = load_file(params[1]+1, &profile); + size_t filelen = load_file(params[1]+1, &profile); if (filelen > 0xfffffffc) /* Maximum profile length */ { fprintf(stderr, "%s: file too long (%lu) for an ICC profile\n", @@ -1179,7 +1179,7 @@ insert_iCCP(png_structp png_ptr, png_infop info_ptr, int nparams, case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': { - png_size_t fake_len = load_fake(params[1], &profile); + size_t fake_len = load_fake(params[1], &profile); if (fake_len > 0) /* else a simple parameter */ { @@ -1274,7 +1274,7 @@ set_text(png_structp png_ptr, png_infop info_ptr, png_textp text, case '5': case '6': case '7': case '8': case '9': { png_bytep data = NULL; - png_size_t fake_len = load_fake(param, &data); + size_t fake_len = load_fake(param, &data); if (fake_len > 0) /* else a simple parameter */ { diff --git a/Build/source/libs/libpng/libpng-src/contrib/libtests/pngimage.c b/Build/source/libs/libpng/libpng-src/contrib/libtests/pngimage.c index 9ae402cc4bb..998d58c5049 100644 --- a/Build/source/libs/libpng/libpng-src/contrib/libtests/pngimage.c +++ b/Build/source/libs/libpng/libpng-src/contrib/libtests/pngimage.c @@ -551,7 +551,7 @@ struct display png_structp original_pp; /* used on the original read */ png_infop original_ip; /* set by the original read */ - png_size_t original_rowbytes; /* of the original rows: */ + size_t original_rowbytes; /* of the original rows: */ png_bytepp original_rows; /* from the original read */ /* Original chunks valid */ @@ -807,7 +807,7 @@ display_cache_file(struct display *dp, const char *filename) static void buffer_read(struct display *dp, struct buffer *bp, png_bytep data, - png_size_t size) + size_t size) { struct buffer_list *last = bp->current; size_t read_count = bp->read_count; @@ -855,7 +855,7 @@ buffer_read(struct display *dp, struct buffer *bp, png_bytep data, } static void PNGCBAPI -read_function(png_structp pp, png_bytep data, png_size_t size) +read_function(png_structp pp, png_bytep data, size_t size) { buffer_read(get_dp(pp), get_buffer(pp), data, size); } @@ -927,7 +927,7 @@ update_display(struct display *dp) png_structp pp; png_infop ip; - /* Now perform the initial read with a 0 tranform. */ + /* Now perform the initial read with a 0 transform. */ read_png(dp, &dp->original_file, "original read", 0/*no transform*/); /* Move the result to the 'original' fields */ @@ -1267,7 +1267,7 @@ compare_read(struct display *dp, int applied_transforms) #ifdef PNG_WRITE_PNG_SUPPORTED static void buffer_write(struct display *dp, struct buffer *buffer, png_bytep data, - png_size_t size) + size_t size) /* Generic write function used both from the write callback provided to * libpng and from the generic read code. */ @@ -1311,7 +1311,7 @@ buffer_write(struct display *dp, struct buffer *buffer, png_bytep data, } static void PNGCBAPI -write_function(png_structp pp, png_bytep data, png_size_t size) +write_function(png_structp pp, png_bytep data, size_t size) { buffer_write(get_dp(pp), get_buffer(pp), data, size); } diff --git a/Build/source/libs/libpng/libpng-src/contrib/libtests/pngstest.c b/Build/source/libs/libpng/libpng-src/contrib/libtests/pngstest.c index ab450893017..74c8d100c88 100644 --- a/Build/source/libs/libpng/libpng-src/contrib/libtests/pngstest.c +++ b/Build/source/libs/libpng/libpng-src/contrib/libtests/pngstest.c @@ -578,11 +578,11 @@ typedef struct int stride_extra; FILE *input_file; png_voidp input_memory; - png_size_t input_memory_size; + size_t input_memory_size; png_bytep buffer; ptrdiff_t stride; - png_size_t bufsize; - png_size_t allocsize; + size_t bufsize; + size_t allocsize; char tmpfile_name[32]; png_uint_16 colormap[256*4]; } @@ -665,7 +665,7 @@ static void initimage(Image *image, png_uint_32 opts, const char *file_name, static void allocbuffer(Image *image) { - png_size_t size = PNG_IMAGE_BUFFER_SIZE(image->image, image->stride); + size_t size = PNG_IMAGE_BUFFER_SIZE(image->image, image->stride); if (size+32 > image->bufsize) { @@ -1142,7 +1142,7 @@ get_pixel(png_uint_32 format))(Pixel *p, png_const_voidp pb) } } -/* Convertion between pixel formats. The code above effectively eliminates the +/* Conversion between pixel formats. The code above effectively eliminates the * component ordering changes leaving three basic changes: * * 1) Remove an alpha channel by pre-multiplication or compositing on a @@ -2036,7 +2036,7 @@ typedef struct /* Precalculated values: */ int in_opaque; /* Value of input alpha that is opaque */ int is_palette; /* Sample values come from the palette */ - int accumulate; /* Accumlate component errors (don't log) */ + int accumulate; /* Accumulate component errors (don't log) */ int output_8bit; /* Output is 8-bit (else 16-bit) */ void (*in_gp)(Pixel*, png_const_voidp); diff --git a/Build/source/libs/libpng/libpng-src/contrib/libtests/pngunknown.c b/Build/source/libs/libpng/libpng-src/contrib/libtests/pngunknown.c index 12eab72584a..d9cc4488b80 100644 --- a/Build/source/libs/libpng/libpng-src/contrib/libtests/pngunknown.c +++ b/Build/source/libs/libpng/libpng-src/contrib/libtests/pngunknown.c @@ -85,7 +85,7 @@ typedef png_byte *png_const_bytep; #define PNG_WRITE_16BIT_SUPPORTED #define PNG_READ_16BIT_SUPPORTED -/* This comes from pnglibconf.h afer 1.5: */ +/* This comes from pnglibconf.h after 1.5: */ #define PNG_FP_1 100000 #define PNG_GAMMA_THRESHOLD_FIXED\ ((png_fixed_point)(PNG_GAMMA_THRESHOLD * PNG_FP_1)) diff --git a/Build/source/libs/libpng/libpng-src/contrib/libtests/pngvalid.c b/Build/source/libs/libpng/libpng-src/contrib/libtests/pngvalid.c index 4dc4f844765..e66f2fa61ad 100644 --- a/Build/source/libs/libpng/libpng-src/contrib/libtests/pngvalid.c +++ b/Build/source/libs/libpng/libpng-src/contrib/libtests/pngvalid.c @@ -102,7 +102,7 @@ typedef png_byte *png_const_bytep; #define PNG_WRITE_16BIT_SUPPORTED #define PNG_READ_16BIT_SUPPORTED -/* This comes from pnglibconf.h afer 1.5: */ +/* This comes from pnglibconf.h after 1.5: */ #define PNG_FP_1 100000 #define PNG_GAMMA_THRESHOLD_FIXED\ ((png_fixed_point)(PNG_GAMMA_THRESHOLD * PNG_FP_1)) @@ -711,7 +711,7 @@ typedef struct png_store_file unsigned int IDAT_bits; /* Number of bits in IDAT size */ png_uint_32 IDAT_size; /* Total size of IDAT data */ png_uint_32 id; /* must be correct (see FILEID) */ - png_size_t datacount; /* In this (the last) buffer */ + size_t datacount; /* In this (the last) buffer */ png_store_buffer data; /* Last buffer in file */ int npalette; /* Number of entries in palette */ store_palette_entry* palette; /* May be NULL */ @@ -777,10 +777,10 @@ typedef struct png_store png_infop piread; png_store_file* current; /* Set when reading */ png_store_buffer* next; /* Set when reading */ - png_size_t readpos; /* Position in *next */ + size_t readpos; /* Position in *next */ png_byte* image; /* Buffer for reading interlaced images */ - png_size_t cb_image; /* Size of this buffer */ - png_size_t cb_row; /* Row size of the image(s) */ + size_t cb_image; /* Size of this buffer */ + size_t cb_row; /* Row size of the image(s) */ uLong IDAT_crc; png_uint_32 IDAT_len; /* Used when re-chunking IDAT chunks */ png_uint_32 IDAT_pos; /* Used when re-chunking IDAT chunks */ @@ -791,7 +791,7 @@ typedef struct png_store png_store_file* saved; png_structp pwrite; /* Used when writing a new file */ png_infop piwrite; - png_size_t writepos; /* Position in .new */ + size_t writepos; /* Position in .new */ char wname[FILE_NAME_SIZE]; png_store_buffer new; /* The end of the new PNG file being written. */ store_pool write_memory_pool; @@ -1125,7 +1125,7 @@ static png_bytep store_image_row(const png_store* ps, png_const_structp pp, int nImage, png_uint_32 y) { - png_size_t coffset = (nImage * ps->image_h + y) * (ps->cb_row + 5) + 2; + size_t coffset = (nImage * ps->image_h + y) * (ps->cb_row + 5) + 2; if (ps->image == NULL) png_error(pp, "no allocated image"); @@ -1160,9 +1160,9 @@ store_image_free(png_store *ps, png_const_structp pp) static void store_ensure_image(png_store *ps, png_const_structp pp, int nImages, - png_size_t cbRow, png_uint_32 cRows) + size_t cbRow, png_uint_32 cRows) { - png_size_t cb = nImages * cRows * (cbRow + 5); + size_t cb = nImages * cRows * (cbRow + 5); if (ps->cb_image < cb) { @@ -1234,7 +1234,7 @@ store_image_check(const png_store* ps, png_const_structp pp, int iImage) png_error(pp, "image overwrite"); else { - png_size_t cbRow = ps->cb_row; + size_t cbRow = ps->cb_row; png_uint_32 rows = ps->image_h; image += iImage * (cbRow+5) * ps->image_h; @@ -1278,7 +1278,7 @@ valid_chunktype(png_uint_32 chunktype) } static void PNGCBAPI -store_write(png_structp ppIn, png_bytep pb, png_size_t st) +store_write(png_structp ppIn, png_bytep pb, size_t st) { png_const_structp pp = ppIn; png_store *ps = voidcast(png_store*, png_get_io_ptr(pp)); @@ -1346,13 +1346,13 @@ store_write(png_structp ppIn, png_bytep pb, png_size_t st) else /* chunkpos >= 8 */ { - png_size_t cb = st; + size_t cb = st; if (cb > STORE_BUFFER_SIZE - writepos) cb = STORE_BUFFER_SIZE - writepos; if (cb > chunklen - chunkpos/* bytes left in chunk*/) - cb = (png_size_t)/*SAFE*/(chunklen - chunkpos); + cb = (size_t)/*SAFE*/(chunklen - chunkpos); memcpy(ps->new.buffer + writepos, pb, cb); chunkpos += (png_uint_32)/*SAFE*/cb; @@ -1440,7 +1440,7 @@ store_read_buffer_next(png_store *ps) * during progressive read, where the io_ptr is set internally by libpng. */ static void -store_read_imp(png_store *ps, png_bytep pb, png_size_t st) +store_read_imp(png_store *ps, png_bytep pb, size_t st) { if (ps->current == NULL || ps->next == NULL) png_error(ps->pread, "store state damaged"); @@ -1463,14 +1463,13 @@ store_read_imp(png_store *ps, png_bytep pb, png_size_t st) } } -static png_size_t -store_read_chunk(png_store *ps, png_bytep pb, const png_size_t max, - const png_size_t min) +static size_t +store_read_chunk(png_store *ps, png_bytep pb, size_t max, size_t min) { png_uint_32 chunklen = ps->chunklen; png_uint_32 chunktype = ps->chunktype; png_uint_32 chunkpos = ps->chunkpos; - png_size_t st = max; + size_t st = max; if (st > 0) do { @@ -1601,8 +1600,8 @@ store_read_chunk(png_store *ps, png_bytep pb, const png_size_t max, store_read_imp(ps, pb, avail); ps->IDAT_crc = crc32(ps->IDAT_crc, pb, avail); - pb += (png_size_t)/*SAFE*/avail; - st -= (png_size_t)/*SAFE*/avail; + pb += (size_t)/*SAFE*/avail; + st -= (size_t)/*SAFE*/avail; chunkpos += (png_uint_32)/*SAFE*/avail; IDAT_size -= (png_uint_32)/*SAFE*/avail; IDAT_pos += (png_uint_32)/*SAFE*/avail; @@ -1669,10 +1668,10 @@ store_read_chunk(png_store *ps, png_bytep pb, const png_size_t max, else /* Return chunk bytes, including the CRC */ { - png_size_t avail = st; + size_t avail = st; if (avail > chunklen - chunkpos) - avail = (png_size_t)/*SAFE*/(chunklen - chunkpos); + avail = (size_t)/*SAFE*/(chunklen - chunkpos); store_read_imp(ps, pb, avail); pb += avail; @@ -1698,7 +1697,7 @@ store_read_chunk(png_store *ps, png_bytep pb, const png_size_t max, } static void PNGCBAPI -store_read(png_structp ppIn, png_bytep pb, png_size_t st) +store_read(png_structp ppIn, png_bytep pb, size_t st) { png_const_structp pp = ppIn; png_store *ps = voidcast(png_store*, png_get_io_ptr(pp)); @@ -1724,7 +1723,7 @@ store_progressive_read(png_store *ps, png_structp pp, png_infop pi) while (store_read_buffer_avail(ps) > 0) { static png_uint_32 noise = 2; - png_size_t cb; + size_t cb; png_byte buffer[512]; /* Generate 15 more bits of stuff: */ @@ -2991,7 +2990,7 @@ modifier_setbuffer(png_modifier *pm) * png_struct. */ static void -modifier_read_imp(png_modifier *pm, png_bytep pb, png_size_t st) +modifier_read_imp(png_modifier *pm, png_bytep pb, size_t st) { while (st > 0) { @@ -3137,7 +3136,7 @@ modifier_read_imp(png_modifier *pm, png_bytep pb, png_size_t st) */ if (len+12 <= sizeof pm->buffer) { - png_size_t s = len+12-pm->buffer_count; + size_t s = len+12-pm->buffer_count; store_read_chunk(&pm->this, pm->buffer+pm->buffer_count, s, s); pm->buffer_count = len+12; @@ -3196,7 +3195,7 @@ modifier_read_imp(png_modifier *pm, png_bytep pb, png_size_t st) /* The callback: */ static void PNGCBAPI -modifier_read(png_structp ppIn, png_bytep pb, png_size_t st) +modifier_read(png_structp ppIn, png_bytep pb, size_t st) { png_const_structp pp = ppIn; png_modifier *pm = voidcast(png_modifier*, png_get_io_ptr(pp)); @@ -3226,7 +3225,7 @@ modifier_progressive_read(png_modifier *pm, png_structp pp, png_infop pi) for (;;) { static png_uint_32 noise = 1; - png_size_t cb, cbAvail; + size_t cb, cbAvail; png_byte buffer[512]; /* Generate 15 more bits of stuff: */ @@ -5001,7 +5000,7 @@ standard_display_init(standard_display *dp, png_store* ps, png_uint_32 id, dp->npalette = 0; /* Preset the transparent color to black: */ memset(&dp->transparent, 0, sizeof dp->transparent); - /* Preset the palette to full intensity/opaque througout: */ + /* Preset the palette to full intensity/opaque throughout: */ memset(dp->palette, 0xff, sizeof dp->palette); } @@ -5270,7 +5269,7 @@ standard_info_part1(standard_display *dp, png_structp pp, png_infop pi) */ standard_palette_validate(dp, pp, pi); - /* In any case always check for a tranparent color (notice that the + /* In any case always check for a transparent color (notice that the * colour type 3 case must not give a successful return on the get_tRNS call * with these arguments!) */ @@ -6780,7 +6779,7 @@ transform_image_validate(transform_display *dp, png_const_structp pp, store_image_check(dp->this.ps, pp, 0); /* Read the palette corresponding to the output if the output colour type - * indicates a palette, othewise set out_palette to garbage. + * indicates a palette, otherwise set out_palette to garbage. */ if (out_ct == PNG_COLOR_TYPE_PALETTE) { @@ -7991,7 +7990,7 @@ image_transform_png_set_rgb_to_gray_mod(const image_transform *this, /* Now calculate the actual gray values. Although the error in the * coefficients depends on whether they were specified on the command * line (in which case truncation to 15 bits happened) or not (rounding - * was used) the maxium error in an individual coefficient is always + * was used) the maximum error in an individual coefficient is always * 2/32768, because even in the rounding case the requirement that * coefficients add up to 32768 can cause a larger rounding error. * @@ -8207,7 +8206,7 @@ image_transform_png_set_rgb_to_gray_mod(const image_transform *this, that->bluef = that->greenf = that->redf = gray; that->bluee = that->greene = that->rede = err; - /* The sBIT is the minium of the three colour channel sBITs. */ + /* The sBIT is the minimum of the three colour channel sBITs. */ if (that->red_sBIT > that->green_sBIT) that->red_sBIT = that->green_sBIT; if (that->red_sBIT > that->blue_sBIT) @@ -9746,7 +9745,7 @@ gamma_component_validate(const char *name, const validate_info *vi, * * pngvalid calculations: * input_sample: linear result; i linearized and composed, range 0..1 - * encoded_sample: encoded result; input_sample scaled to ouput bit depth + * encoded_sample: encoded result; input_sample scaled to output bit depth * * libpng calculations: * output: linear result; od scaled to 0..1 and linearized @@ -10183,10 +10182,10 @@ gamma_image_validate(gamma_display *dp, png_const_structp pp, * Since the library must quantize the output to 8 or 16 bits there is * a fundamental limit on the accuracy of the output of +/-.5 - this * quantization limit is included in addition to the other limits - * specified by the paramaters to the API. (Effectively, add .5 + * specified by the parameters to the API. (Effectively, add .5 * everywhere.) * - * The behavior of the 'sbit' paramter is defined by section 12.5 + * The behavior of the 'sbit' parameter is defined by section 12.5 * (sample depth scaling) of the PNG spec. That section forces the * decoder to assume that the PNG values have been scaled if sBIT is * present: @@ -11729,7 +11728,7 @@ int main(int argc, char **argv) /* Some default values (set the behavior for 'make check' here). * These values simply control the maximum error permitted in the gamma - * transformations. The practial limits for human perception are described + * transformations. The practical limits for human perception are described * below (the setting for maxpc16), however for 8 bit encodings it isn't * possible to meet the accepted capabilities of human vision - i.e. 8 bit * images can never be good enough, regardless of encoding. diff --git a/Build/source/libs/libpng/libpng-src/contrib/libtests/readpng.c b/Build/source/libs/libpng/libpng-src/contrib/libtests/readpng.c index 3336d4e2180..60a2d46c56f 100644 --- a/Build/source/libs/libpng/libpng-src/contrib/libtests/readpng.c +++ b/Build/source/libs/libpng/libpng-src/contrib/libtests/readpng.c @@ -60,7 +60,7 @@ read_png(FILE *fp) png_read_info(png_ptr, info_ptr); { - png_size_t rowbytes = png_get_rowbytes(png_ptr, info_ptr); + size_t rowbytes = png_get_rowbytes(png_ptr, info_ptr); /* Failure to initialize these is harmless */ row = malloc(rowbytes); diff --git a/Build/source/libs/libpng/libpng-src/contrib/libtests/tarith.c b/Build/source/libs/libpng/libpng-src/contrib/libtests/tarith.c index cb17ffa7641..c95226f030a 100644 --- a/Build/source/libs/libpng/libpng-src/contrib/libtests/tarith.c +++ b/Build/source/libs/libpng/libpng-src/contrib/libtests/tarith.c @@ -108,7 +108,7 @@ int validation_ascii_to_fp(int count, int argc, char **argv) do { - png_size_t index; + size_t index; int state, failed = 0; char buffer[64]; @@ -176,7 +176,7 @@ int validation_ascii_to_fp(int count, int argc, char **argv) } else if (PNG_FP_IS_POSITIVE(state) && !(test > 0)) { - fprintf(stderr, "%g[%d] -> '%s' but postive value not so reported\n", + fprintf(stderr, "%g[%d] -> '%s' but positive value not so reported\n", test, precision, buffer); failed = 1; assert(!PNG_FP_IS_NEGATIVE(state)); @@ -329,7 +329,7 @@ static int check_one_character(checkfp_command *co, checkfp_control c, int ch) { /* Test this character (ch) to ensure the parser does the correct thing. */ - png_size_t index = 0; + size_t index = 0; const char test = (char)ch; const int number_is_valid = png_check_fp_number(&test, 1, &c.state, &index); const int character_accepted = (index == 1); diff --git a/Build/source/libs/libpng/libpng-src/contrib/libtests/timepng.c b/Build/source/libs/libpng/libpng-src/contrib/libtests/timepng.c index 3bcfde5a359..23d8b17b139 100644 --- a/Build/source/libs/libpng/libpng-src/contrib/libtests/timepng.c +++ b/Build/source/libs/libpng/libpng-src/contrib/libtests/timepng.c @@ -65,7 +65,7 @@ typedef struct } io_data; static PNG_CALLBACK(void, read_and_copy, - (png_structp png_ptr, png_bytep buffer, png_size_t cb)) + (png_structp png_ptr, png_bytep buffer, size_t cb)) { io_data *io = (io_data*)png_get_io_ptr(png_ptr); @@ -100,7 +100,7 @@ static void read_by_row(png_structp png_ptr, png_infop info_ptr, png_read_info(png_ptr, info_ptr); { - png_size_t rowbytes = png_get_rowbytes(png_ptr, info_ptr); + size_t rowbytes = png_get_rowbytes(png_ptr, info_ptr); row = voidcast(png_bytep,malloc(rowbytes)); display = voidcast(png_bytep,malloc(rowbytes)); diff --git a/Build/source/libs/libpng/libpng-src/contrib/oss-fuzz/Dockerfile b/Build/source/libs/libpng/libpng-src/contrib/oss-fuzz/Dockerfile index 7e4d1ebff2c..f5bc1a985d3 100644 --- a/Build/source/libs/libpng/libpng-src/contrib/oss-fuzz/Dockerfile +++ b/Build/source/libs/libpng/libpng-src/contrib/oss-fuzz/Dockerfile @@ -16,9 +16,10 @@ FROM gcr.io/oss-fuzz-base/base-builder MAINTAINER glennrp@gmail.com -RUN apt-get update && apt-get install -y make autoconf automake libtool zlib1g-dev +RUN apt-get update && \ + apt-get install -y make autoconf automake libtool +RUN git clone --depth 1 https://github.com/madler/zlib.git RUN git clone --depth 1 https://github.com/glennrp/libpng.git -RUN (cd libpng; git log | head -1) +RUN cp libpng/contrib/oss-fuzz/build.sh $SRC WORKDIR libpng -COPY build.sh $SRC/ diff --git a/Build/source/libs/libpng/libpng-src/contrib/oss-fuzz/README.txt b/Build/source/libs/libpng/libpng-src/contrib/oss-fuzz/README.txt index a2b67366584..3b3656fbb60 100644 --- a/Build/source/libs/libpng/libpng-src/contrib/oss-fuzz/README.txt +++ b/Build/source/libs/libpng/libpng-src/contrib/oss-fuzz/README.txt @@ -24,13 +24,13 @@ The files are Filename or derived Copyright License ========================= ========== ================ ========== Dockerfile* derived 2017, Glenn R-P Apache 2.0 - build.sh* derived 2017, Glenn R-P Apache 2.0 + build.sh derived 2017, Glenn R-P Apache 2.0 libpng_read_fuzzer.cc derived 2017, Glenn R-P Chromium libpng_read_fuzzer.options original 2015, Chrome Devs Chromium png.dict original 2015, Chrome Devs Chromium README.txt (this file) original 2017, Glenn R-P libpng - * Dockerfile and build.sh are copies of the files used by oss-fuzz. + * Dockerfile is a copy of the file used by oss-fuzz. build.sh, png.dict and libpng_read_fuzzer.* are the actual files used by oss-fuzz, which retrieves them from the libpng repository at Github. diff --git a/Build/source/libs/libpng/libpng-src/contrib/oss-fuzz/build.sh b/Build/source/libs/libpng/libpng-src/contrib/oss-fuzz/build.sh index d2137b13e70..f9e1b0776d0 100755 --- a/Build/source/libs/libpng/libpng-src/contrib/oss-fuzz/build.sh +++ b/Build/source/libs/libpng/libpng-src/contrib/oss-fuzz/build.sh @@ -1,5 +1,5 @@ #!/bin/bash -eu -# Copyright 2017 Glenn Randers-Pehrson +# Copyright 2017-2018 Glenn Randers-Pehrson # Copyright 2016 Google Inc. # # Licensed under the Apache License, Version 2.0 (the "License"); @@ -14,12 +14,13 @@ # See the License for the specific language governing permissions and # limitations under the License. # -# Last changed in libpng 1.6.33 [September 28, 2017] +# Last changed in libpng 1.6.35 [July 15, 2018] # -# Revisions by Glenn Randers-Pehson, 2017: +# Revisions by Glenn Randers-Pehrson, 2017: # 1. Build only the library, not the tools (changed "make -j$(nproc) all" to # "make -j$(nproc) libpng16.la"). # 2. Disabled WARNING and WRITE options in pnglibconf.dfa. +# 3. Build zlib alongside libpng ################################################################################ # Disable logging via library build configuration control. @@ -30,9 +31,9 @@ cat scripts/pnglibconf.dfa | \ > scripts/pnglibconf.dfa.temp mv scripts/pnglibconf.dfa.temp scripts/pnglibconf.dfa -# build the library. +# build the libpng library. autoreconf -f -i -./configure +./configure --with-libpng-prefix=OSS_FUZZ_ make -j$(nproc) clean make -j$(nproc) libpng16.la diff --git a/Build/source/libs/libpng/libpng-src/contrib/oss-fuzz/libpng_read_fuzzer.cc b/Build/source/libs/libpng/libpng-src/contrib/oss-fuzz/libpng_read_fuzzer.cc index 78c7c9ff096..7b305509cde 100644 --- a/Build/source/libs/libpng/libpng-src/contrib/oss-fuzz/libpng_read_fuzzer.cc +++ b/Build/source/libs/libpng/libpng-src/contrib/oss-fuzz/libpng_read_fuzzer.cc @@ -1,11 +1,11 @@ // libpng_read_fuzzer.cc -// Copyright 2017 Glenn Randers-Pehrson +// Copyright 2017-2018 Glenn Randers-Pehrson // Copyright 2015 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that may // be found in the LICENSE file https://cs.chromium.org/chromium/src/LICENSE -// Last changed in libpng 1.6.32 [August 24, 2017] +// Last changed in libpng 1.6.35 [July 15, 2018] // The modifications in 2017 by Glenn Randers-Pehrson include // 1. addition of a PNG_CLEANUP macro, @@ -13,6 +13,7 @@ // 3. adding "#include <string.h>" which is needed on some platforms // to provide memcpy(). // 4. adding read_end_info() and creating an end_info structure. +// 5. adding calls to png_set_*() transforms commonly used by browsers. #include <stddef.h> #include <stdint.h> @@ -67,7 +68,7 @@ struct PngObjectHandler { } }; -void user_read_data(png_structp png_ptr, png_bytep data, png_size_t length) { +void user_read_data(png_structp png_ptr, png_bytep data, size_t length) { BufState* buf_state = static_cast<BufState*>(png_get_io_ptr(png_ptr)); if (length > buf_state->bytes_left) { png_error(png_ptr, "read error"); @@ -136,9 +137,6 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) { // Reading. png_read_info(png_handler.png_ptr, png_handler.info_ptr); - png_handler.row_ptr = png_malloc( - png_handler.png_ptr, png_get_rowbytes(png_handler.png_ptr, - png_handler.info_ptr)); // reset error handler to put png_deleter into scope. if (setjmp(png_jmpbuf(png_handler.png_ptr))) { @@ -163,8 +161,20 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) { return 0; } + // Set several transforms that browsers typically use: + png_set_gray_to_rgb(png_handler.png_ptr); + png_set_expand(png_handler.png_ptr); + png_set_packing(png_handler.png_ptr); + png_set_scale_16(png_handler.png_ptr); + png_set_tRNS_to_alpha(png_handler.png_ptr); + int passes = png_set_interlace_handling(png_handler.png_ptr); - png_start_read_image(png_handler.png_ptr); + + png_read_update_info(png_handler.png_ptr, png_handler.info_ptr); + + png_handler.row_ptr = png_malloc( + png_handler.png_ptr, png_get_rowbytes(png_handler.png_ptr, + png_handler.info_ptr)); for (int pass = 0; pass < passes; ++pass) { for (png_uint_32 y = 0; y < height; ++y) { diff --git a/Build/source/libs/libpng/libpng-src/contrib/oss-fuzz/newcc b/Build/source/libs/libpng/libpng-src/contrib/oss-fuzz/newcc deleted file mode 100644 index 0fc9e206c21..00000000000 --- a/Build/source/libs/libpng/libpng-src/contrib/oss-fuzz/newcc +++ /dev/null @@ -1,190 +0,0 @@ - -// libpng_read_fuzzer.cc -// Copyright 2017 Glenn Randers-Pehrson -// Copyright 2015 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that may -// be found in the LICENSE file https://cs.chromium.org/chromium/src/LICENSE - -// Last changed in libpng 1.6.33beta03 [September 27, 2017] - -// The modifications in 2017 by Glenn Randers-Pehrson include -// 1. addition of a PNG_CLEANUP macro, -// 2. setting the option to ignore ADLER32 checksums, -// 3. adding "#include <string.h>" which is needed on some platforms -// to provide memcpy(). -// 4. adding read_end_info() and creating an end_info structure. - -#include <stddef.h> -#include <stdint.h> -#include <string.h> - -#include <vector> - -#define PNG_INTERNAL -#include "png.h" - -struct BufState { - const uint8_t* data; - size_t bytes_left; -}; - -struct PngObjectHandler { - png_infop info_ptr = nullptr; - png_structp png_ptr = nullptr; - png_infop end_info_ptr = nullptr; - png_voidp row_ptr = nullptr; - BufState* buf_state = nullptr; - - ~PngObjectHandler() { - if (row_ptr) - png_free(png_ptr, row_ptr); - if (end_info_ptr) - png_destroy_read_struct(&png_ptr, &info_ptr, &end_info_ptr); - else if (info_ptr) - png_destroy_read_struct(&png_ptr, &info_ptr, nullptr); - else - png_destroy_read_struct(&png_ptr, nullptr, nullptr); - delete buf_state; - } -}; - -void user_read_data(png_structp png_ptr, png_bytep data, png_size_t length) { - BufState* buf_state = static_cast<BufState*>(png_get_io_ptr(png_ptr)); - if (length > buf_state->bytes_left) { - png_error(png_ptr, "read error"); - } - memcpy(data, buf_state->data, length); - buf_state->bytes_left -= length; - buf_state->data += length; -} - -static const int kPngHeaderSize = 8; - -// Entry point for LibFuzzer. -// Roughly follows the libpng book example: -// http://www.libpng.org/pub/png/book/chapter13.html - -extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) { - if (size < kPngHeaderSize) { - return 0; - } - - std::vector<unsigned char> v(data, data + size); - if (png_sig_cmp(v.data(), 0, kPngHeaderSize)) { - // not a PNG. - return 0; - } - - PngObjectHandler png_handler; - png_handler.png_ptr = nullptr; - png_handler.row_ptr = nullptr; - png_handler.info_ptr = nullptr; - png_handler.end_info_ptr = nullptr; - - png_handler.png_ptr = png_create_read_struct - (PNG_LIBPNG_VER_STRING, nullptr, nullptr, nullptr); - if (!png_handler.png_ptr) { - return 0; - } - -#define PNG_CLEANUP \ - if(png_handler.png_ptr) \ - { \ - if (png_handler.row_ptr) \ - png_free(png_handler.png_ptr, png_handler.row_ptr); \ - if (png_handler.end_info_ptr) \ - png_destroy_read_struct(&png_handler.png_ptr, &png_handler.info_ptr,\ - &png_handler.end_info_ptr); \ - else if (png_handler.info_ptr) \ - png_destroy_read_struct(&png_handler.png_ptr, &png_handler.info_ptr,\ - nullptr); \ - else \ - png_destroy_read_struct(&png_handler.png_ptr, nullptr, nullptr); \ - png_handler.png_ptr = nullptr; \ - png_handler.row_ptr = nullptr; \ - png_handler.info_ptr = nullptr; \ - png_handler.end_info_ptr = nullptr; \ - } - - png_handler.info_ptr = png_create_info_struct(png_handler.png_ptr); - if (!png_handler.info_ptr) { - PNG_CLEANUP - return 0; - } - - png_handler.end_info_ptr = png_create_info_struct(png_handler.png_ptr); - if (!png_handler.end_info_ptr) { - PNG_CLEANUP - return 0; - } - - /* Treat benign errors as warnings */ - png_set_benign_errors(png_handler.png_ptr, 1); - - png_set_crc_action(png_handler.png_ptr, PNG_CRC_QUIET_USE, PNG_CRC_QUIET_USE); - -#ifdef PNG_IGNORE_ADLER32 - png_set_option(png_handler.png_ptr, PNG_IGNORE_ADLER32, PNG_OPTION_ON); -#endif - - // Setting up reading from buffer. - png_handler.buf_state = new BufState(); - png_handler.buf_state->data = data + kPngHeaderSize; - png_handler.buf_state->bytes_left = size - kPngHeaderSize; - png_set_read_fn(png_handler.png_ptr, png_handler.buf_state, user_read_data); - png_set_sig_bytes(png_handler.png_ptr, kPngHeaderSize); - - if (setjmp(png_jmpbuf(png_handler.png_ptr))) { - PNG_CLEANUP - return 0; - } - - // Reading. - png_read_info(png_handler.png_ptr, png_handler.info_ptr); - png_read_update_info(png_handler.png_ptr, png_handler.info_ptr); - png_handler.row_ptr = png_malloc( - png_handler.png_ptr, png_get_rowbytes(png_handler.png_ptr, - png_handler.info_ptr)); - - // reset error handler to put png_deleter into scope. - if (setjmp(png_jmpbuf(png_handler.png_ptr))) { - PNG_CLEANUP - return 0; - } - - png_uint_32 width, height; - int bit_depth, color_type, interlace_type, compression_type; - int filter_type; - - if (!png_get_IHDR(png_handler.png_ptr, png_handler.info_ptr, &width, - &height, &bit_depth, &color_type, &interlace_type, - &compression_type, &filter_type)) { - PNG_CLEANUP - return 0; - } - - // This is going to be too slow. - if (width && height > 100000000 / width) { - PNG_CLEANUP - return 0; - } - - int passes = png_set_interlace_handling(png_handler.png_ptr); - png_start_read_image(png_handler.png_ptr); - - /* To do: prevent the optimizer from removing this code entirely */ - for (int pass = 0; pass < passes; ++pass) { - for (png_uint_32 y = 0; y < height; ++y) { - png_read_row(png_handler.png_ptr, - static_cast<png_bytep>(png_handler.row_ptr), nullptr); - } - } - - png_read_end(png_handler.png_ptr, png_handler.end_info_ptr); - - PNG_CLEANUP - - /* TO do: exercise the progressive reader here */ - - return 0; -} diff --git a/Build/source/libs/libpng/libpng-src/contrib/pngminus/README b/Build/source/libs/libpng/libpng-src/contrib/pngminus/README index fbcfc986118..23614a800e1 100644 --- a/Build/source/libs/libpng/libpng-src/contrib/pngminus/README +++ b/Build/source/libs/libpng/libpng-src/contrib/pngminus/README @@ -17,7 +17,7 @@ express or implied warranty. Some history ------------ Soon after the creation of PNG in 1995, the need was felt for a set of -pnmtopng / pngtopnm utilities. Independantly Alexander Lehmann and I +pnmtopng / pngtopnm utilities. Independently Alexander Lehmann and I (Willem van Schaik) started such a project. Luckily we discovered this and merged the two together into pnmtopng.tar.gz, which is available from a/o ftp://ftp.simplesystems.org/pub/libpng/png/. diff --git a/Build/source/libs/libpng/libpng-src/contrib/pngminus/png2pnm.bat b/Build/source/libs/libpng/libpng-src/contrib/pngminus/png2pnm.bat index 449cf36750b..a2798c34032 100644 --- a/Build/source/libs/libpng/libpng-src/contrib/pngminus/png2pnm.bat +++ b/Build/source/libs/libpng/libpng-src/contrib/pngminus/png2pnm.bat @@ -7,7 +7,7 @@ png2pnm.exe -noraw ..\pngsuite\basn0g16.png basn0g16.pgm REM -- full-color png2pnm.exe -noraw ..\pngsuite\basn2c08.png basn2c08.ppm png2pnm.exe -noraw ..\pngsuite\basn2c16.png basn2c16.ppm -REM -- palletted +REM -- paletted png2pnm.exe -noraw ..\pngsuite\basn3p01.png basn3p01.ppm png2pnm.exe -noraw ..\pngsuite\basn3p02.png basn3p02.ppm png2pnm.exe -noraw ..\pngsuite\basn3p04.png basn3p04.ppm @@ -27,7 +27,7 @@ png2pnm.exe -raw ..\pngsuite\basn0g16.png rawn0g16.pgm REM -- full-color png2pnm.exe -raw ..\pngsuite\basn2c08.png rawn2c08.ppm png2pnm.exe -raw ..\pngsuite\basn2c16.png rawn2c16.ppm -REM -- palletted +REM -- paletted png2pnm.exe -raw ..\pngsuite\basn3p01.png rawn3p01.ppm png2pnm.exe -raw ..\pngsuite\basn3p02.png rawn3p02.ppm png2pnm.exe -raw ..\pngsuite\basn3p04.png rawn3p04.ppm diff --git a/Build/source/libs/libpng/libpng-src/contrib/pngminus/png2pnm.sh b/Build/source/libs/libpng/libpng-src/contrib/pngminus/png2pnm.sh index b1c05370dff..756126a53c2 100755 --- a/Build/source/libs/libpng/libpng-src/contrib/pngminus/png2pnm.sh +++ b/Build/source/libs/libpng/libpng-src/contrib/pngminus/png2pnm.sh @@ -8,7 +8,7 @@ # -- full-color ./png2pnm -noraw ../pngsuite/basn2c08.png basn2c08.ppm ./png2pnm -noraw ../pngsuite/basn2c16.png basn2c16.ppm -# -- palletted +# -- paletted ./png2pnm -noraw ../pngsuite/basn3p01.png basn3p01.ppm ./png2pnm -noraw ../pngsuite/basn3p02.png basn3p02.ppm ./png2pnm -noraw ../pngsuite/basn3p04.png basn3p04.ppm @@ -28,7 +28,7 @@ # -- full-color ./png2pnm -raw ../pngsuite/basn2c08.png rawn2c08.ppm ./png2pnm -raw ../pngsuite/basn2c16.png rawn2c16.ppm -# -- palletted +# -- paletted ./png2pnm -raw ../pngsuite/basn3p01.png rawn3p01.ppm ./png2pnm -raw ../pngsuite/basn3p02.png rawn3p02.ppm ./png2pnm -raw ../pngsuite/basn3p04.png rawn3p04.ppm diff --git a/Build/source/libs/libpng/libpng-src/contrib/pngminus/pnm2png.bat b/Build/source/libs/libpng/libpng-src/contrib/pngminus/pnm2png.bat index f756cb84de4..c02b80beccd 100644 --- a/Build/source/libs/libpng/libpng-src/contrib/pngminus/pnm2png.bat +++ b/Build/source/libs/libpng/libpng-src/contrib/pngminus/pnm2png.bat @@ -7,7 +7,7 @@ pnm2png.exe basn0g16.pgm basn0g16.png REM -- full-color pnm2png.exe basn2c08.ppm basn2c08.png pnm2png.exe basn2c16.ppm basn2c16.png -REM -- palletted +REM -- paletted pnm2png.exe basn3p01.ppm basn3p01.png pnm2png.exe basn3p02.ppm basn3p02.png pnm2png.exe basn3p04.ppm basn3p04.png @@ -27,7 +27,7 @@ pnm2png.exe rawn0g16.pgm rawn0g16.png REM -- full-color pnm2png.exe rawn2c08.ppm rawn2c08.png pnm2png.exe rawn2c16.ppm rawn2c16.png -REM -- palletted +REM -- paletted pnm2png.exe rawn3p01.ppm rawn3p01.png pnm2png.exe rawn3p02.ppm rawn3p02.png pnm2png.exe rawn3p04.ppm rawn3p04.png diff --git a/Build/source/libs/libpng/libpng-src/contrib/pngminus/pnm2png.sh b/Build/source/libs/libpng/libpng-src/contrib/pngminus/pnm2png.sh index d79df2fae08..2ad17a608c9 100755 --- a/Build/source/libs/libpng/libpng-src/contrib/pngminus/pnm2png.sh +++ b/Build/source/libs/libpng/libpng-src/contrib/pngminus/pnm2png.sh @@ -8,7 +8,7 @@ # -- full-color ./pnm2png basn2c08.ppm basn2c08.png ./pnm2png basn2c16.ppm basn2c16.png -# -- palletted +# -- paletted ./pnm2png basn3p01.ppm basn3p01.png ./pnm2png basn3p02.ppm basn3p02.png ./pnm2png basn3p04.ppm basn3p04.png @@ -28,7 +28,7 @@ # -- full-color ./pnm2png rawn2c08.ppm rawn2c08.png ./pnm2png rawn2c16.ppm rawn2c16.png -# -- palletted +# -- paletted ./pnm2png rawn3p01.ppm rawn3p01.png ./pnm2png rawn3p02.ppm rawn3p02.png ./pnm2png rawn3p04.ppm rawn3p04.png diff --git a/Build/source/libs/libpng/libpng-src/contrib/pngsuite/README b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/README index 53ba5c8f7ed..d236b02e7c6 100644 --- a/Build/source/libs/libpng/libpng-src/contrib/pngsuite/README +++ b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/README @@ -16,6 +16,8 @@ chunks, etc. The "ft*.png" images are "free/libre" replacements for the transparent corresponding t*.png images in the PngSuite. +The "i*.png" images are the same images, but interlaced. + The images in this directory represent the basic PNG color-types: grayscale (1-16 bit deep), full color (8 or 16 bit), paletted (1-8 bit) and grayscale or color images with alpha channel. You diff --git a/Build/source/libs/libpng/libpng-src/contrib/pngsuite/bad_interlace_conversions.txt b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/bad_interlace_conversions.txt new file mode 100644 index 00000000000..8afbde79018 --- /dev/null +++ b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/bad_interlace_conversions.txt @@ -0,0 +1,9 @@ +basn0g01.png +basn0g02.png +basn0g04.png +basn3p01.png +basn3p02.png +basn3p04.png +ftbbn0g01.png +ftbbn0g02.png +ftbbn0g04.png diff --git a/Build/source/libs/libpng/libpng-src/contrib/pngsuite/ibasn0g08.png b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/ibasn0g08.png Binary files differnew file mode 100644 index 00000000000..90b5305e651 --- /dev/null +++ b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/ibasn0g08.png diff --git a/Build/source/libs/libpng/libpng-src/contrib/pngsuite/ibasn0g16.png b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/ibasn0g16.png Binary files differnew file mode 100644 index 00000000000..c82f230eef5 --- /dev/null +++ b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/ibasn0g16.png diff --git a/Build/source/libs/libpng/libpng-src/contrib/pngsuite/ibasn2c08.png b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/ibasn2c08.png Binary files differnew file mode 100644 index 00000000000..05d4688853e --- /dev/null +++ b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/ibasn2c08.png diff --git a/Build/source/libs/libpng/libpng-src/contrib/pngsuite/ibasn2c16.png b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/ibasn2c16.png Binary files differnew file mode 100644 index 00000000000..399f1be5edd --- /dev/null +++ b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/ibasn2c16.png diff --git a/Build/source/libs/libpng/libpng-src/contrib/pngsuite/ibasn3p08.png b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/ibasn3p08.png Binary files differnew file mode 100644 index 00000000000..6df8370aaf8 --- /dev/null +++ b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/ibasn3p08.png diff --git a/Build/source/libs/libpng/libpng-src/contrib/pngsuite/ibasn4a08.png b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/ibasn4a08.png Binary files differnew file mode 100644 index 00000000000..bda8e3c6517 --- /dev/null +++ b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/ibasn4a08.png diff --git a/Build/source/libs/libpng/libpng-src/contrib/pngsuite/ibasn4a16.png b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/ibasn4a16.png Binary files differnew file mode 100644 index 00000000000..500f9128e6e --- /dev/null +++ b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/ibasn4a16.png diff --git a/Build/source/libs/libpng/libpng-src/contrib/pngsuite/ibasn6a08.png b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/ibasn6a08.png Binary files differnew file mode 100644 index 00000000000..258f94050cc --- /dev/null +++ b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/ibasn6a08.png diff --git a/Build/source/libs/libpng/libpng-src/contrib/pngsuite/ibasn6a16.png b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/ibasn6a16.png Binary files differnew file mode 100644 index 00000000000..e4de69fef1d --- /dev/null +++ b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/ibasn6a16.png diff --git a/Build/source/libs/libpng/libpng-src/contrib/pngsuite/iftbbn2c16.png b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/iftbbn2c16.png Binary files differnew file mode 100644 index 00000000000..64a9cdf2f7f --- /dev/null +++ b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/iftbbn2c16.png diff --git a/Build/source/libs/libpng/libpng-src/contrib/pngsuite/iftbbn3p08.png b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/iftbbn3p08.png Binary files differnew file mode 100644 index 00000000000..47d6eeb3c0f --- /dev/null +++ b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/iftbbn3p08.png diff --git a/Build/source/libs/libpng/libpng-src/contrib/pngsuite/iftbgn2c16.png b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/iftbgn2c16.png Binary files differnew file mode 100644 index 00000000000..64a9cdf2f7f --- /dev/null +++ b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/iftbgn2c16.png diff --git a/Build/source/libs/libpng/libpng-src/contrib/pngsuite/iftbgn3p08.png b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/iftbgn3p08.png Binary files differnew file mode 100644 index 00000000000..47d6eeb3c0f --- /dev/null +++ b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/iftbgn3p08.png diff --git a/Build/source/libs/libpng/libpng-src/contrib/pngsuite/iftbrn2c08.png b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/iftbrn2c08.png Binary files differnew file mode 100644 index 00000000000..08ebbae2c8c --- /dev/null +++ b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/iftbrn2c08.png diff --git a/Build/source/libs/libpng/libpng-src/contrib/pngsuite/iftbwn0g16.png b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/iftbwn0g16.png Binary files differnew file mode 100644 index 00000000000..4b7537e3050 --- /dev/null +++ b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/iftbwn0g16.png diff --git a/Build/source/libs/libpng/libpng-src/contrib/pngsuite/iftbwn3p08.png b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/iftbwn3p08.png Binary files differnew file mode 100644 index 00000000000..47d6eeb3c0f --- /dev/null +++ b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/iftbwn3p08.png diff --git a/Build/source/libs/libpng/libpng-src/contrib/pngsuite/iftbyn3p08.png b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/iftbyn3p08.png Binary files differnew file mode 100644 index 00000000000..47d6eeb3c0f --- /dev/null +++ b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/iftbyn3p08.png diff --git a/Build/source/libs/libpng/libpng-src/contrib/pngsuite/iftp0n0g08.png b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/iftp0n0g08.png Binary files differnew file mode 100644 index 00000000000..aa826b86308 --- /dev/null +++ b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/iftp0n0g08.png diff --git a/Build/source/libs/libpng/libpng-src/contrib/pngsuite/iftp0n2c08.png b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/iftp0n2c08.png Binary files differnew file mode 100644 index 00000000000..b12bd0a7fa9 --- /dev/null +++ b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/iftp0n2c08.png diff --git a/Build/source/libs/libpng/libpng-src/contrib/pngsuite/iftp0n3p08.png b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/iftp0n3p08.png Binary files differnew file mode 100644 index 00000000000..37aa0cb0d92 --- /dev/null +++ b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/iftp0n3p08.png diff --git a/Build/source/libs/libpng/libpng-src/contrib/pngsuite/iftp1n3p08.png b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/iftp1n3p08.png Binary files differnew file mode 100644 index 00000000000..47d6eeb3c0f --- /dev/null +++ b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/iftp1n3p08.png diff --git a/Build/source/libs/libpng/libpng-src/contrib/pngsuite/interlaced/README b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/interlaced/README new file mode 100644 index 00000000000..f171eee01aa --- /dev/null +++ b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/interlaced/README @@ -0,0 +1,2 @@ + +These images fail the "pngimage-quick" and "pngimage-full" tests. diff --git a/Build/source/libs/libpng/libpng-src/contrib/pngsuite/interlaced/ibasn0g01.png b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/interlaced/ibasn0g01.png Binary files differnew file mode 100644 index 00000000000..828fa760369 --- /dev/null +++ b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/interlaced/ibasn0g01.png diff --git a/Build/source/libs/libpng/libpng-src/contrib/pngsuite/interlaced/ibasn0g02.png b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/interlaced/ibasn0g02.png Binary files differnew file mode 100644 index 00000000000..7fc17e3a1ee --- /dev/null +++ b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/interlaced/ibasn0g02.png diff --git a/Build/source/libs/libpng/libpng-src/contrib/pngsuite/interlaced/ibasn0g04.png b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/interlaced/ibasn0g04.png Binary files differnew file mode 100644 index 00000000000..1beade28f57 --- /dev/null +++ b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/interlaced/ibasn0g04.png diff --git a/Build/source/libs/libpng/libpng-src/contrib/pngsuite/interlaced/ibasn3p01.png b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/interlaced/ibasn3p01.png Binary files differnew file mode 100644 index 00000000000..f91e7233e70 --- /dev/null +++ b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/interlaced/ibasn3p01.png diff --git a/Build/source/libs/libpng/libpng-src/contrib/pngsuite/interlaced/ibasn3p02.png b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/interlaced/ibasn3p02.png Binary files differnew file mode 100644 index 00000000000..0f9ce76e6b3 --- /dev/null +++ b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/interlaced/ibasn3p02.png diff --git a/Build/source/libs/libpng/libpng-src/contrib/pngsuite/interlaced/ibasn3p04.png b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/interlaced/ibasn3p04.png Binary files differnew file mode 100644 index 00000000000..b2ca720747a --- /dev/null +++ b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/interlaced/ibasn3p04.png diff --git a/Build/source/libs/libpng/libpng-src/contrib/pngsuite/interlaced/iftbbn0g01.png b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/interlaced/iftbbn0g01.png Binary files differnew file mode 100644 index 00000000000..6eb27d10e8d --- /dev/null +++ b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/interlaced/iftbbn0g01.png diff --git a/Build/source/libs/libpng/libpng-src/contrib/pngsuite/interlaced/iftbbn0g02.png b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/interlaced/iftbbn0g02.png Binary files differnew file mode 100644 index 00000000000..46ba4977792 --- /dev/null +++ b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/interlaced/iftbbn0g02.png diff --git a/Build/source/libs/libpng/libpng-src/contrib/pngsuite/interlaced/iftbbn0g04.png b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/interlaced/iftbbn0g04.png Binary files differnew file mode 100644 index 00000000000..e9db0ad50d0 --- /dev/null +++ b/Build/source/libs/libpng/libpng-src/contrib/pngsuite/interlaced/iftbbn0g04.png diff --git a/Build/source/libs/libpng/libpng-src/contrib/powerpc-vsx/README b/Build/source/libs/libpng/libpng-src/contrib/powerpc-vsx/README index e566147ea05..4970a52c692 100644 --- a/Build/source/libs/libpng/libpng-src/contrib/powerpc-vsx/README +++ b/Build/source/libs/libpng/libpng-src/contrib/powerpc-vsx/README @@ -46,7 +46,7 @@ everything should be static. It must define the function: static int png_have_vsx(png_structp png_ptr); -That function must return 1 if ARM NEON instructions are supported, 0 if not. +That function must return 1 if POWERPC_VSX instructions are supported, 0 if not. It must not execute png_error unless it detects a bug. A png_error will prevent the reading of the PNG and in the future, writing too. diff --git a/Build/source/libs/libpng/libpng-src/contrib/testpngs/makepngs.sh b/Build/source/libs/libpng/libpng-src/contrib/testpngs/makepngs.sh index 059503e2368..eb1c15fc951 100755 --- a/Build/source/libs/libpng/libpng-src/contrib/testpngs/makepngs.sh +++ b/Build/source/libs/libpng/libpng-src/contrib/testpngs/makepngs.sh @@ -74,7 +74,7 @@ case "$1" in --coverage) # Comments below indicate cases known to be required and not duplicated # in other (required) cases; the aim is to get a minimal set that gives - # the maxium code coverage. + # the maximum code coverage. mpg none gray-alpha 8 # required: code coverage, sRGB opaque component mpg none palette 8 # required: basic palette read mpg 1.8 gray 2 # required: tests gamma threshold code diff --git a/Build/source/libs/libpng/libpng-src/contrib/tools/chkfmt b/Build/source/libs/libpng/libpng-src/contrib/tools/chkfmt index a1b88ccbff5..95181fde2ed 100644 --- a/Build/source/libs/libpng/libpng-src/contrib/tools/chkfmt +++ b/Build/source/libs/libpng/libpng-src/contrib/tools/chkfmt @@ -54,7 +54,7 @@ doed(){ } # In beta versions the version string which appears in files can be a little -# long and cause spuriously overlong lines. To avoid this subtitute the version +# long and cause spuriously overlong lines. To avoid this substitute the version # string with a 'standard' version a.b.cc before checking for long lines. if test -r png.h then diff --git a/Build/source/libs/libpng/libpng-src/contrib/tools/pngcp.c b/Build/source/libs/libpng/libpng-src/contrib/tools/pngcp.c index e82dddccc78..f6a0d50f436 100644 --- a/Build/source/libs/libpng/libpng-src/contrib/tools/pngcp.c +++ b/Build/source/libs/libpng/libpng-src/contrib/tools/pngcp.c @@ -191,7 +191,7 @@ vl_strategy[] = /* This controls the order of search. */ { "huffman", Z_HUFFMAN_ONLY }, { "RLE", Z_RLE }, - { "fixed", Z_FIXED }, /* the remainder do window searchs */ + { "fixed", Z_FIXED }, /* the remainder do window searches */ { "filtered", Z_FILTERED }, { "default", Z_DEFAULT_STRATEGY }, { all, 0 } @@ -336,7 +336,7 @@ static const option options[] = # define VLC(name) VLCIDAT(name) VLCiCCP(name) VLCzTXt(name) # ifdef PNG_SW_COMPRESS_png_level - /* The libpng compression level isn't searched beause it justs sets the + /* The libpng compression level isn't searched because it justs sets the * other things that are searched! */ VLO("compression", compression, 0) @@ -1725,7 +1725,7 @@ display_start_read(struct display *dp, const char *filename) } static void PNGCBAPI -read_function(png_structp pp, png_bytep data, png_size_t size) +read_function(png_structp pp, png_bytep data, size_t size) { struct display *dp = get_dp(pp); @@ -1881,7 +1881,7 @@ display_start_write(struct display *dp, const char *filename) } static void PNGCBAPI -write_function(png_structp pp, png_bytep data, png_size_t size) +write_function(png_structp pp, png_bytep data, size_t size) { struct display *dp = get_dp(pp); @@ -2117,7 +2117,7 @@ better_options(const struct display *dp) * * This function looks through the stack from the bottom up looking for an * option that does not match the current best value. When it finds one it - * checks to see if it is more or less desireable and returns true or false + * checks to see if it is more or less desirable and returns true or false * as appropriate. * * Notice that this means that the order options are pushed onto the stack diff --git a/Build/source/libs/libpng/libpng-src/contrib/tools/pngfix.c b/Build/source/libs/libpng/libpng-src/contrib/tools/pngfix.c index 69ffc170e45..f494230d8ce 100644 --- a/Build/source/libs/libpng/libpng-src/contrib/tools/pngfix.c +++ b/Build/source/libs/libpng/libpng-src/contrib/tools/pngfix.c @@ -2363,7 +2363,7 @@ zlib_advance(struct zlib *zlib, png_uint_32 nbytes) flush = Z_NO_FLUSH; out_bytes = 0; - /* NOTE: expression 3 is only evaluted on 'continue', because of the + /* NOTE: expression 3 is only evaluated on 'continue', because of the * 'break' at the end of this loop below. */ for (;endrc == ZLIB_OK; @@ -2664,7 +2664,7 @@ zlib_check(struct file *file, png_uint_32 offset) * this case, so do the optimization anyway. */ if (zlib.cksum) - chunk_message(zlib.chunk, "zlib checkum"); + chunk_message(zlib.chunk, "zlib checksum"); break; @@ -3678,7 +3678,7 @@ usage(const char *prog) size_t i; static const char *usage_string[] = { " Tests, optimizes and optionally fixes the zlib header in PNG files.", -" Optionally, when fixing, strips ancilliary chunks from the file.", +" Optionally, when fixing, strips ancillary chunks from the file.", 0, "OPTIONS", " OPERATION", diff --git a/Build/source/libs/libpng/libpng-src/contrib/visupng/PngFile.c b/Build/source/libs/libpng/libpng-src/contrib/visupng/PngFile.c index d46318f4474..cf943f32a6c 100644 --- a/Build/source/libs/libpng/libpng-src/contrib/visupng/PngFile.c +++ b/Build/source/libs/libpng/libpng-src/contrib/visupng/PngFile.c @@ -410,15 +410,14 @@ BOOL PngSaveImage (PTSTR pstrFileName, png_byte *pDiData, #ifndef PNG_STDIO_SUPPORTED static void -png_read_data(png_structp png_ptr, png_bytep data, png_size_t length) +png_read_data(png_structp png_ptr, png_bytep data, size_t length) { - png_size_t check; + size_t check; - /* fread() returns 0 on error, so it is OK to store this in a png_size_t + /* fread() returns 0 on error, so it is OK to store this in a size_t * instead of an int, which is what fread() actually returns. */ - check = (png_size_t)fread(data, (png_size_t)1, length, - (FILE *)png_ptr->io_ptr); + check = fread(data, 1, length, (FILE *)png_ptr->io_ptr); if (check != length) { @@ -427,7 +426,7 @@ png_read_data(png_structp png_ptr, png_bytep data, png_size_t length) } static void -png_write_data(png_structp png_ptr, png_bytep data, png_size_t length) +png_write_data(png_structp png_ptr, png_bytep data, size_t length) { png_uint_32 check; diff --git a/Build/source/libs/libpng/libpng-src/contrib/visupng/PngFile.h b/Build/source/libs/libpng/libpng-src/contrib/visupng/PngFile.h index 474426c22ea..1b7b9be3c34 100644 --- a/Build/source/libs/libpng/libpng-src/contrib/visupng/PngFile.h +++ b/Build/source/libs/libpng/libpng-src/contrib/visupng/PngFile.h @@ -23,8 +23,8 @@ BOOL PngSaveImage (PTSTR pstrFileName, png_byte *pDiData, int iWidth, int iHeight, png_color BkgColor); #ifndef PNG_STDIO_SUPPORTED -static void png_read_data(png_structp png_ptr, png_bytep data, png_size_t length); -static void png_write_data(png_structp png_ptr, png_bytep data, png_size_t length); +static void png_read_data(png_structp png_ptr, png_bytep data, size_t length); +static void png_write_data(png_structp png_ptr, png_bytep data, size_t length); static void png_flush(png_structp png_ptr); #endif diff --git a/Build/source/libs/libpng/libpng-src/contrib/visupng/VisualPng.c b/Build/source/libs/libpng/libpng-src/contrib/visupng/VisualPng.c index 20e1625fa7d..6baa3b66309 100644 --- a/Build/source/libs/libpng/libpng-src/contrib/visupng/VisualPng.c +++ b/Build/source/libs/libpng/libpng-src/contrib/visupng/VisualPng.c @@ -716,7 +716,7 @@ BOOL DisplayImage (HWND hwnd, BYTE **ppDib, png_color bkgGray = {127, 127, 127}; png_color bkgWhite = {255, 255, 255}; - /* allocate memory for the Device Independant bitmap */ + /* allocate memory for the Device Independent bitmap */ wDIRowBytes = (WORD) ((3 * cxWinSize + 3L) >> 2) << 2; |