20#if defined(PNG_READ_SUPPORTED) || defined(PNG_WRITE_SUPPORTED)
22#ifdef PNG_bKGD_SUPPORTED
27 png_debug1(1,
"in %s storage function",
"bKGD");
37#ifdef PNG_cHRM_SUPPORTED
44 png_debug1(1,
"in %s storage function",
"cHRM fixed");
72 png_debug1(1,
"in %s storage function",
"cHRM XYZ fixed");
87 if (png_xy_from_XYZ(&xy, &XYZ) == 0)
97# ifdef PNG_FLOATING_POINT_SUPPORTED
100 double white_x,
double white_y,
double red_x,
double red_y,
101 double green_x,
double green_y,
double blue_x,
double blue_y)
104 png_fixed(
png_ptr, white_x,
"cHRM White X"),
105 png_fixed(
png_ptr, white_y,
"cHRM White Y"),
106 png_fixed(
png_ptr, red_x,
"cHRM Red X"),
107 png_fixed(
png_ptr, red_y,
"cHRM Red Y"),
108 png_fixed(
png_ptr, green_x,
"cHRM Green X"),
109 png_fixed(
png_ptr, green_y,
"cHRM Green Y"),
110 png_fixed(
png_ptr, blue_x,
"cHRM Blue X"),
111 png_fixed(
png_ptr, blue_y,
"cHRM Blue Y"));
128 png_fixed(
png_ptr, blue_Z,
"cHRM Blue Z"));
134#ifdef PNG_cICP_SUPPORTED
137 png_byte colour_primaries, png_byte transfer_function,
138 png_byte matrix_coefficients, png_byte video_full_range_flag)
140 png_debug1(1,
"in %s storage function",
"cICP");
145 info_ptr->cicp_colour_primaries = colour_primaries;
146 info_ptr->cicp_transfer_function = transfer_function;
147 info_ptr->cicp_matrix_coefficients = matrix_coefficients;
148 info_ptr->cicp_video_full_range_flag = video_full_range_flag;
150 if (
info_ptr->cicp_matrix_coefficients != 0)
152 png_warning(
png_ptr,
"Invalid cICP matrix coefficients");
160#ifdef PNG_cLLI_SUPPORTED
168 png_debug1(1,
"in %s storage function",
"cLLI");
174 if (maxCLL > 0x7FFFFFFFU || maxFALL > 0x7FFFFFFFU)
182 png_chunk_report(
png_ptr,
"cLLI light level exceeds PNG limit",
192# ifdef PNG_FLOATING_POINT_SUPPORTED
195 double maxCLL,
double maxFALL)
198 png_fixed_ITU(
png_ptr, maxCLL,
"png_set_cLLI(maxCLL)"),
199 png_fixed_ITU(
png_ptr, maxFALL,
"png_set_cLLI(maxFALL)"));
204#ifdef PNG_mDCV_SUPPORTED
215 if (
v > 65535 ||
v < 0)
221 return (png_uint_16)
v;
233 png_uint_16 rx, ry, gx, gy, bx,
by, wx, wy;
236 png_debug1(1,
"in %s storage function",
"mDCV");
243 rx = png_ITU_fixed_16(&
error, red_x);
244 ry = png_ITU_fixed_16(&
error, red_y);
245 gx = png_ITU_fixed_16(&
error, green_x);
246 gy = png_ITU_fixed_16(&
error, green_y);
247 bx = png_ITU_fixed_16(&
error, blue_x);
248 by = png_ITU_fixed_16(&
error, blue_y);
249 wx = png_ITU_fixed_16(&
error, white_x);
250 wy = png_ITU_fixed_16(&
error, white_y);
255 "mDCV chromaticities outside representable range",
261 if (maxDL > 0x7FFFFFFFU || minDL > 0x7FFFFFFFU)
269 png_chunk_report(
png_ptr,
"mDCV display light level exceeds PNG limit",
295# ifdef PNG_FLOATING_POINT_SUPPORTED
298 double white_x,
double white_y,
double red_x,
double red_y,
double green_x,
299 double green_y,
double blue_x,
double blue_y,
300 double maxDL,
double minDL)
303 png_fixed(
png_ptr, white_x,
"png_set_mDCV(white(x))"),
304 png_fixed(
png_ptr, white_y,
"png_set_mDCV(white(y))"),
305 png_fixed(
png_ptr, red_x,
"png_set_mDCV(red(x))"),
306 png_fixed(
png_ptr, red_y,
"png_set_mDCV(red(y))"),
307 png_fixed(
png_ptr, green_x,
"png_set_mDCV(green(x))"),
308 png_fixed(
png_ptr, green_y,
"png_set_mDCV(green(y))"),
309 png_fixed(
png_ptr, blue_x,
"png_set_mDCV(blue(x))"),
310 png_fixed(
png_ptr, blue_y,
"png_set_mDCV(blue(y))"),
311 png_fixed_ITU(
png_ptr, maxDL,
"png_set_mDCV(maxDL)"),
312 png_fixed_ITU(
png_ptr, minDL,
"png_set_mDCV(minDL)"));
317#ifdef PNG_eXIf_SUPPORTED
322 png_warning(
png_ptr,
"png_set_eXIf does not work; use png_set_eXIf_1");
333 png_debug1(1,
"in %s storage function",
"eXIf");
341 if (new_exif ==
NULL)
343 png_warning(
png_ptr,
"Insufficient memory for eXIf chunk data");
347 memcpy(new_exif, exif, (
size_t)num_exif);
358#ifdef PNG_gAMA_SUPPORTED
363 png_debug1(1,
"in %s storage function",
"gAMA");
372# ifdef PNG_FLOATING_POINT_SUPPORTED
382#ifdef PNG_hIST_SUPPORTED
389 png_debug1(1,
"in %s storage function",
"hIST");
398 "Invalid palette size, hIST allocation skipped");
413 png_warning(
png_ptr,
"Insufficient memory for hIST chunk data");
428 int color_type,
int interlace_type,
int compression_type,
431 png_debug1(1,
"in %s storage function",
"IHDR");
438 info_ptr->bit_depth = (png_byte)bit_depth;
439 info_ptr->color_type = (png_byte)color_type;
440 info_ptr->compression_type = (png_byte)compression_type;
441 info_ptr->filter_type = (png_byte)filter_type;
442 info_ptr->interlace_type = (png_byte)interlace_type;
465#ifdef PNG_oFFs_SUPPORTED
468 png_int_32 offset_x, png_int_32 offset_y,
int unit_type)
470 png_debug1(1,
"in %s storage function",
"oFFs");
477 info_ptr->offset_unit_type = (png_byte)unit_type;
482#ifdef PNG_pCAL_SUPPORTED
491 png_debug1(1,
"in %s storage function",
"pCAL");
498 png_debug1(3,
"allocating purpose for info (%lu bytes)",
504 if (type < 0 || type > 3)
506 png_chunk_report(
png_ptr,
"Invalid pCAL equation type",
511 if (nparams < 0 || nparams > 255)
513 png_chunk_report(
png_ptr,
"Invalid pCAL parameter count",
519 for (
i=0;
i<nparams; ++
i)
524 png_chunk_report(
png_ptr,
"Invalid format for pCAL parameter",
535 png_chunk_report(
png_ptr,
"Insufficient memory for pCAL purpose",
544 png_debug(3,
"storing X0, X1, type, and nparams in info");
548 info_ptr->pcal_nparams = (png_byte)nparams;
551 png_debug1(3,
"allocating units for info (%lu bytes)",
559 png_warning(
png_ptr,
"Insufficient memory for pCAL units");
566 (
size_t)(((
unsigned int)nparams + 1) * (
sizeof (
png_charp)))));
570 png_warning(
png_ptr,
"Insufficient memory for pCAL params");
577 for (
i = 0;
i < nparams;
i++)
580 png_debug2(3,
"allocating parameter %d for info (%lu bytes)",
i,
587 png_warning(
png_ptr,
"Insufficient memory for pCAL parameter");
598#ifdef PNG_sCAL_SUPPORTED
603 size_t lengthw = 0, lengthh = 0;
605 png_debug1(1,
"in %s storage function",
"sCAL");
614 png_error(
png_ptr,
"Invalid sCAL unit");
616 if (swidth ==
NULL || (lengthw =
strlen(swidth)) == 0 ||
617 swidth[0] == 45 || !png_check_fp_string(swidth, lengthw))
618 png_error(
png_ptr,
"Invalid sCAL width");
620 if (sheight ==
NULL || (lengthh =
strlen(sheight)) == 0 ||
621 sheight[0] == 45 || !png_check_fp_string(sheight, lengthh))
622 png_error(
png_ptr,
"Invalid sCAL height");
628 png_debug1(3,
"allocating unit for info (%u bytes)", (
unsigned int)lengthw);
631 png_malloc_warn(
png_ptr, lengthw));
635 png_warning(
png_ptr,
"Memory allocation failed while processing sCAL");
644 png_debug1(3,
"allocating unit for info (%u bytes)", (
unsigned int)lengthh);
647 png_malloc_warn(
png_ptr, lengthh));
654 png_warning(
png_ptr,
"Memory allocation failed while processing sCAL");
664# ifdef PNG_FLOATING_POINT_SUPPORTED
669 png_debug1(1,
"in %s storage function",
"sCAL");
673 png_warning(
png_ptr,
"Invalid sCAL width ignored");
676 png_warning(
png_ptr,
"Invalid sCAL height ignored");
681 char swidth[PNG_sCAL_MAX_DIGITS+1];
682 char sheight[PNG_sCAL_MAX_DIGITS+1];
684 png_ascii_from_fp(
png_ptr, swidth, (
sizeof swidth),
width,
686 png_ascii_from_fp(
png_ptr, sheight, (
sizeof sheight),
height,
694# ifdef PNG_FIXED_POINT_SUPPORTED
699 png_debug1(1,
"in %s storage function",
"sCAL");
703 png_warning(
png_ptr,
"Invalid sCAL width ignored");
706 png_warning(
png_ptr,
"Invalid sCAL height ignored");
711 char swidth[PNG_sCAL_MAX_DIGITS+1];
712 char sheight[PNG_sCAL_MAX_DIGITS+1];
714 png_ascii_from_fixed(
png_ptr, swidth, (
sizeof swidth),
width);
715 png_ascii_from_fixed(
png_ptr, sheight, (
sizeof sheight),
height);
723#ifdef PNG_pHYs_SUPPORTED
728 png_debug1(1,
"in %s storage function",
"pHYs");
733 info_ptr->x_pixels_per_unit = res_x;
734 info_ptr->y_pixels_per_unit = res_y;
735 info_ptr->phys_unit_type = (png_byte)unit_type;
747 png_debug1(1,
"in %s storage function",
"PLTE");
755 if (num_palette < 0 || num_palette > (
int) max_palette_length)
758 png_error(
png_ptr,
"Invalid palette length");
762 png_warning(
png_ptr,
"Invalid palette length");
775 png_error(
png_ptr,
"Invalid palette");
799 info_ptr->num_palette =
png_ptr->num_palette = (png_uint_16)num_palette;
804#ifdef PNG_sBIT_SUPPORTED
809 png_debug1(1,
"in %s storage function",
"sBIT");
819#ifdef PNG_sRGB_SUPPORTED
823 png_debug1(1,
"in %s storage function",
"sRGB");
828 info_ptr->rendering_intent = srgb_intent;
836 png_debug1(1,
"in %s storage function",
"sRGB_gAMA_and_cHRM");
843# ifdef PNG_gAMA_SUPPORTED
847# ifdef PNG_cHRM_SUPPORTED
859#ifdef PNG_iCCP_SUPPORTED
869 png_debug1(1,
"in %s storage function",
"iCCP");
880 if (new_iccp_name ==
NULL)
882 png_benign_error(
png_ptr,
"Insufficient memory to process iCCP chunk");
889 png_malloc_warn(
png_ptr, proflen));
891 if (new_iccp_profile ==
NULL)
893 png_free(
png_ptr, new_iccp_name);
895 "Insufficient memory to process iCCP profile");
905 info_ptr->iccp_name = new_iccp_name;
906 info_ptr->iccp_profile = new_iccp_profile;
912#ifdef PNG_TEXT_SUPPORTED
921 png_error(
png_ptr,
"Insufficient memory to store text");
930 png_debug1(1,
"in text storage function, chunk typeid = 0x%lx",
943 int old_num_text =
info_ptr->num_text;
948 max_text = old_num_text;
949 if (num_text <=
INT_MAX - max_text)
951 max_text += num_text;
955 max_text = (max_text + 8) & ~0x7;
964 info_ptr->text, old_num_text, max_text-old_num_text,
968 if (new_text ==
NULL)
970 png_chunk_report(
png_ptr,
"too many text chunks",
983 png_debug1(3,
"allocated %d entries for info_ptr->text", max_text);
986 for (
i = 0;
i < num_text;
i++)
988 size_t text_length, key_len;
989 size_t lang_len, lang_key_len;
998 png_chunk_report(
png_ptr,
"text compression mode is out of range",
1012# ifdef PNG_iTXt_SUPPORTED
1022 if (text_ptr[
i].lang_key !=
NULL)
1023 lang_key_len =
strlen(text_ptr[
i].lang_key);
1030 png_chunk_report(
png_ptr,
"iTXt chunk not supported",
1039# ifdef PNG_iTXt_SUPPORTED
1055 key_len + text_length + lang_len + lang_key_len + 4));
1059 png_chunk_report(
png_ptr,
"text chunk: out of memory",
1065 png_debug2(2,
"Allocated %lu bytes at %p in png_set_text",
1067 (key_len + lang_len + lang_key_len + text_length + 4),
1070 memcpy(textp->
key, text_ptr[
i].key, key_len);
1071 *(textp->
key + key_len) =
'\0';
1075 textp->
lang = textp->
key + key_len + 1;
1077 *(textp->
lang + lang_len) =
'\0';
1080 *(textp->
lang_key + lang_key_len) =
'\0';
1088 textp->
text = textp->
key + key_len + 1;
1091 if (text_length != 0)
1092 memcpy(textp->
text, text_ptr[
i].text, text_length);
1094 *(textp->
text + text_length) =
'\0';
1096# ifdef PNG_iTXt_SUPPORTED
1118#ifdef PNG_tIME_SUPPORTED
1123 png_debug1(1,
"in %s storage function",
"tIME");
1129 if (mod_time->
month == 0 || mod_time->
month > 12 ||
1130 mod_time->
day == 0 || mod_time->
day > 31 ||
1131 mod_time->
hour > 23 || mod_time->
minute > 59 ||
1134 png_warning(
png_ptr,
"Ignoring invalid time value");
1144#ifdef PNG_tRNS_SUPPORTED
1149 png_debug1(1,
"in %s storage function",
"tRNS");
1155 if (trans_alpha !=
NULL)
1181 if (trans_color !=
NULL)
1183#ifdef PNG_WARNINGS_SUPPORTED
1186 int sample_max = (1 <<
info_ptr->bit_depth) - 1;
1189 trans_color->
gray > sample_max) ||
1191 (trans_color->
red > sample_max ||
1192 trans_color->
green > sample_max ||
1193 trans_color->
blue > sample_max)))
1195 "tRNS chunk has out-of-range samples for bit_depth");
1199 info_ptr->trans_color = *trans_color;
1205 info_ptr->num_trans = (png_uint_16)num_trans;
1215#ifdef PNG_sPLT_SUPPORTED
1230 png_debug1(1,
"in %s storage function",
"sPLT");
1318#ifdef PNG_STORE_UNKNOWN_CHUNKS_SUPPORTED
1332 "png_set_unknown_chunks now expects a valid location");
1342 png_error(
png_ptr,
"invalid location in png_set_unknown_chunks");
1372# if !defined(PNG_READ_UNKNOWN_CHUNKS_SUPPORTED) && \
1373 defined(PNG_READ_SUPPORTED)
1381# if !defined(PNG_WRITE_UNKNOWN_CHUNKS_SUPPORTED) && \
1382 defined(PNG_WRITE_SUPPORTED)
1402 png_chunk_report(
png_ptr,
"too many unknown chunks",
1412 np +=
info_ptr->unknown_chunks_num;
1417 for (; num_unknowns > 0; --num_unknowns, ++unknowns)
1420 np->
name[(
sizeof np->
name)-1] =
'\0';
1423 if (unknowns->
size == 0)
1436 png_chunk_report(
png_ptr,
"unknown chunk: out of memory",
1465 chunk < info_ptr->unknown_chunks_num)
1484#ifdef PNG_MNG_FEATURES_SUPPORTED
1488 png_debug(1,
"in png_permit_mng_features");
1495 return png_ptr->mng_features_permitted;
1499#ifdef PNG_HANDLE_AS_UNKNOWN_SUPPORTED
1512 list[4] = (png_byte)keep;
1522 list[4] = (png_byte)keep;
1533 unsigned int num_chunks, old_num_chunks;
1545 if (num_chunks_in <= 0)
1547 png_ptr->unknown_default = keep;
1550 if (num_chunks_in == 0)
1554 if (num_chunks_in < 0)
1559 static const png_byte chunks_to_ignore[] = {
1560 98, 75, 71, 68,
'\0',
1561 99, 72, 82, 77,
'\0',
1562 99, 73, 67, 80,
'\0',
1563 99, 76, 76, 73,
'\0',
1564 101, 88, 73, 102,
'\0',
1565 103, 65, 77, 65,
'\0',
1566 104, 73, 83, 84,
'\0',
1567 105, 67, 67, 80,
'\0',
1568 105, 84, 88, 116,
'\0',
1569 109, 68, 67, 86,
'\0',
1570 111, 70, 70, 115,
'\0',
1571 112, 67, 65, 76,
'\0',
1572 112, 72, 89, 115,
'\0',
1573 115, 66, 73, 84,
'\0',
1574 115, 67, 65, 76,
'\0',
1575 115, 80, 76, 84,
'\0',
1576 115, 84, 69, 82,
'\0',
1577 115, 82, 71, 66,
'\0',
1578 116, 69, 88, 116,
'\0',
1579 116, 73, 77, 69,
'\0',
1580 122, 84, 88, 116,
'\0'
1583 chunk_list = chunks_to_ignore;
1584 num_chunks = (
unsigned int)(
sizeof chunks_to_ignore)/5U;
1589 if (chunk_list ==
NULL)
1599 num_chunks = (
unsigned int)num_chunks_in;
1602 old_num_chunks =
png_ptr->num_chunk_list;
1608 if (num_chunks + old_num_chunks >
UINT_MAX/5)
1622 5 * (num_chunks + old_num_chunks)));
1624 if (old_num_chunks > 0)
1628 else if (old_num_chunks > 0)
1629 new_list =
png_ptr->chunk_list;
1639 if (new_list !=
NULL)
1645 for (
i=0;
i<num_chunks; ++
i)
1647 old_num_chunks = add_one_chunk(new_list, old_num_chunks,
1648 chunk_list+5*
i, keep);
1653 for (
i=0, inlist=outlist=new_list;
i<old_num_chunks; ++
i, inlist += 5)
1657 if (outlist != inlist)
1658 memcpy(outlist, inlist, 5);
1665 if (num_chunks == 0)
1667 if (
png_ptr->chunk_list != new_list)
1677 png_ptr->num_chunk_list = num_chunks;
1679 if (
png_ptr->chunk_list != new_list)
1684 png_ptr->chunk_list = new_list;
1689#ifdef PNG_READ_USER_CHUNKS_SUPPORTED
1692 png_user_chunk_ptr read_user_chunk_fn)
1694 png_debug(1,
"in png_set_read_user_chunk_fn");
1699 png_ptr->read_user_chunk_fn = read_user_chunk_fn;
1700 png_ptr->user_chunk_ptr = user_chunk_ptr;
1704#ifdef PNG_INFO_IMAGE_SUPPORTED
1715 (
info_ptr->row_pointers != row_pointers))
1718 info_ptr->row_pointers = row_pointers;
1720 if (row_pointers !=
NULL)
1728 png_debug(1,
"in png_set_compression_buffer_size");
1734 png_error(
png_ptr,
"invalid compression buffer size");
1736# ifdef PNG_SEQUENTIAL_READ_SUPPORTED
1744# ifdef PNG_WRITE_SUPPORTED
1750 "Compression buffer size cannot be changed because it is in use");
1762 "Compression buffer size limited to system maximum");
1773 "Compression buffer size cannot be reduced below 6");
1795#ifdef PNG_SET_USER_LIMITS_SUPPORTED
1810 png_ptr->user_width_max = user_width_max;
1811 png_ptr->user_height_max = user_height_max;
1818 png_debug(1,
"in png_set_chunk_cache_max");
1821 png_ptr->user_chunk_cache_max = user_chunk_cache_max;
1829 png_debug(1,
"in png_set_chunk_malloc_max");
1838 if (user_chunk_malloc_max == 0
U)
1840# ifdef PNG_MAX_MALLOC_64K
1841 png_ptr->user_chunk_malloc_max = 65536U;
1847 png_ptr->user_chunk_malloc_max = user_chunk_malloc_max;
1853#ifdef PNG_BENIGN_ERRORS_SUPPORTED
1857 png_debug(1,
"in png_set_benign_errors");
1875#ifdef PNG_CHECK_FOR_INVALID_INDEX_SUPPORTED
1887 png_debug(1,
"in png_set_check_for_invalid_index");
1893 png_ptr->num_palette_max = -1;
1897#if defined(PNG_TEXT_SUPPORTED) || defined(PNG_pCAL_SUPPORTED) || \
1898 defined(PNG_iCCP_SUPPORTED) || defined(PNG_sPLT_SUPPORTED)
1912#ifdef PNG_WARNINGS_SUPPORTED
1916 int bad_character = 0;
1927 while (*
key && key_len < 79)
1929 png_byte
ch = (png_byte)*
key++;
1931 if ((
ch > 32 &&
ch <= 126) || (
ch >= 161 ))
1936 else if (
space == 0)
1948 else if (bad_character == 0)
1952 if (key_len > 0 &&
space != 0)
1955 if (bad_character == 0)
1965#ifdef PNG_WARNINGS_SUPPORTED
1968 png_warning(
png_ptr,
"keyword truncated");
1970 else if (bad_character != 0)
_In_ fcb _In_ chunk _In_ uint64_t _In_ uint64_t _In_ bool _In_opt_ void _In_opt_ PIRP _In_ LIST_ENTRY _In_ uint8_t compression
_ACRTIMP int __cdecl memcmp(const void *, const void *, size_t)
_ACRTIMP size_t __cdecl strlen(const char *)
static HCRYPTKEY new_key(HCRYPTPROV hProv, ALG_ID aiAlgid, DWORD dwFlags, CRYPTKEY **ppCryptKey)
unsigned int(__cdecl typeof(jpeg_read_scanlines))(struct jpeg_decompress_struct *
GLuint GLuint GLsizei count
GLuint GLuint GLsizei GLenum type
GLint GLint GLsizei GLsizei height
GLint GLint GLsizei width
GLenum const GLfloat * params
GLuint GLsizei GLsizei * length
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
#define location(file, line)
#define memcpy(s1, s2, n)
#define PNG_COLOR_TYPE_RGB
#define PNG_COLOR_TYPE_GRAY
#define PNG_COLOR_TYPE_PALETTE
png_const_structrp png_const_inforp double double double double double double double double double *blue_Z png_const_structrp png_const_inforp png_fixed_point png_fixed_point png_fixed_point png_fixed_point png_fixed_point png_fixed_point png_fixed_point png_fixed_point png_fixed_point *int_blue_Z png_set_cHRM_XYZ
png_const_structrp png_const_inforp double * red_X
png_const_structrp png_const_inforp double double double double double double double double * blue_Y
png_const_structrp png_const_inforp int * unit
png_const_structrp png_const_inforp double double double double double double double double double *blue_Z png_const_structrp png_const_inforp png_fixed_point png_fixed_point png_fixed_point png_fixed_point png_fixed_point png_fixed_point png_fixed_point * int_blue_X
png_const_structrp png_const_inforp double double double double double double double double double *blue_Z png_const_structrp png_const_inforp png_fixed_point png_fixed_point png_fixed_point png_fixed_point png_fixed_point * int_green_Y
#define PNG_MAX_PALETTE_LENGTH
#define PNG_ITXT_COMPRESSION_NONE
png_const_structrp png_const_inforp double double double double double double * green_Z
png_const_structrp png_const_inforp double double double * red_Z
#define PNG_HANDLE_CHUNK_LAST
png_const_structrp png_const_inforp png_uint_32p png_uint_32p maximum_frame_average_light_level_scaled_by_10000 png_set_cLLI_fixed
png_const_structrp png_const_inforp double double double double double double double double double *blue_Z png_const_structrp png_const_inforp png_fixed_point png_fixed_point png_fixed_point png_fixed_point png_fixed_point png_fixed_point png_fixed_point png_fixed_point png_fixed_point *int_blue_Z png_const_structrp png_inforp double double double double double double double double double blue_Z png_set_cHRM_XYZ_fixed
png_const_structrp png_const_inforp double double double double double double double double double *blue_Z png_const_structrp png_const_inforp png_fixed_point * int_red_X
png_const_structrp png_const_inforp double double double double double double double double double *blue_Z png_const_structrp png_const_inforp png_fixed_point png_fixed_point * int_red_Y
png_const_structrp png_const_inforp double double double double double * green_Y
png_const_structrp png_const_inforp double double double double * green_X
png_const_structrp png_const_inforp double double double double double double double double double *blue_Z png_const_structrp png_const_inforp png_fixed_point png_fixed_point png_fixed_point png_fixed_point png_fixed_point png_fixed_point png_fixed_point png_fixed_point * int_blue_Y
#define PNG_TEXT_COMPRESSION_NONE
#define PNG_TEXT_COMPRESSION_LAST
png_const_structrp png_const_inforp double double * red_Y
#define PNG_COLOR_MASK_COLOR
png_const_structrp png_const_inforp png_fixed_point *int_file_gamma png_set_gAMA_fixed
png_const_structrp png_const_inforp double double double double double double double double double *blue_Z png_const_structrp png_const_inforp png_fixed_point png_fixed_point png_fixed_point png_fixed_point png_fixed_point png_fixed_point * int_green_Z
png_const_structrp png_const_inforp double double double double double double double * blue_X
png_const_structrp png_const_inforp png_fixed_point png_fixed_point png_fixed_point png_fixed_point png_fixed_point png_fixed_point png_fixed_point png_fixed_point png_uint_32p png_uint_32p mastering_display_minimum_luminance_scaled_by_10000 png_set_mDCV_fixed
#define PNG_ALL_MNG_FEATURES
#define PNG_COLOR_MASK_ALPHA
png_const_structrp png_const_inforp double double double double double double double double double *blue_Z png_const_structrp png_const_inforp png_fixed_point png_fixed_point png_fixed_point png_fixed_point * int_green_X
png_const_structrp png_const_inforp double double double double double double double double double *blue_Z png_const_structrp png_const_inforp png_fixed_point png_fixed_point png_fixed_point * int_red_Z
#define PNG_FLAG_MNG_EMPTY_PLTE
const png_struct *PNG_RESTRICT png_const_structrp
png_info *PNG_RESTRICT png_inforp
#define PNG_COMPRESSION_TYPE_BASE
#define PNG_HANDLE_CHUNK_AS_DEFAULT
png_struct *PNG_RESTRICT png_structrp
png_const_structrp png_const_inforp info_ptr
png_int_32 png_fixed_point
const png_byte * png_const_bytep
const png_uint_16 * png_const_uint_16p
png_uint_16 * png_uint_16p
const char * png_const_charp
#define png_debug2(l, m, p1, p2)
#define png_debug1(l, m, p1)
#define PNG_sCAL_PRECISION
#define PNG_MNG_FEATURES_SUPPORTED
#define PNG_UNUSED(param)
#define PNG_CHUNK_WRITE_ERROR
#define PNG_ROWBYTES(pixel_bits, width)
#define PNG_FLAG_APP_ERRORS_WARN
#define png_app_error(pp, s)
#define png_app_warning(pp, s)
#define PNG_FLAG_BENIGN_ERRORS_WARN
#define PNG_WARNING_PARAMETERS(p)
#define png_warning_parameter_signed(p, number, format, value)
#define PNG_FLAG_APP_WARNINGS_WARN
#define PNG_IS_READ_STRUCT
#define PNG_GAMMA_sRGB_INVERSE
#define png_warning_parameter(p, number, string)
#define png_voidcast(type, value)
#define png_formatted_warning(pp, p, message)
static const WCHAR lang[]
ActualNumberDriverObjects * sizeof(PDRIVER_OBJECT)) PDRIVER_OBJECT *DriverObjectList