21#if defined(PNG_READ_SUPPORTED) || defined(PNG_WRITE_SUPPORTED)
26#ifdef PNG_WARNINGS_SUPPORTED
37#ifdef PNG_ERROR_TEXT_SUPPORTED
42#ifdef PNG_ERROR_NUMBERS_SUPPORTED
104 png_default_error(
png_ptr,
"");
127#if defined(PNG_WARNINGS_SUPPORTED) || defined(PNG_TIME_RFC1123_SUPPORTED)
148 static const char digits[] =
"0123456789ABCDEF";
152 case PNG_NUMBER_FORMAT_fixed:
155 if (output != 0 ||
number % 10 != 0)
163 case PNG_NUMBER_FORMAT_02u:
168 case PNG_NUMBER_FORMAT_u:
173 case PNG_NUMBER_FORMAT_02x:
178 case PNG_NUMBER_FORMAT_x:
209#ifdef PNG_WARNINGS_SUPPORTED
221#ifdef PNG_ERROR_NUMBERS_SUPPORTED
229 if (warning_message[
offset] ==
' ')
236 warning_message +
offset);
250 if (
number > 0 &&
number <= PNG_WARNING_PARAMETER_COUNT)
258 char buffer[PNG_NUMBER_BUFFER_SIZE];
268 char buffer[PNG_NUMBER_BUFFER_SIZE];
277 if (value < 0 && str >
buffer)
308 int parameter_char = *++
message;
309 static const char valid_parameters[] =
"123456789";
315 while (valid_parameters[parameter] != parameter_char &&
316 valid_parameters[parameter] !=
'\0')
320 if (parameter < PNG_WARNING_PARAMETER_COUNT)
330 while (
i<(
sizeof msg)-1 && *parm !=
'\0' && parm < pend)
360#ifdef PNG_BENIGN_ERRORS_SUPPORTED
366# ifdef PNG_READ_SUPPORTED
377# ifdef PNG_READ_SUPPORTED
386# ifndef PNG_ERROR_TEXT_SUPPORTED
399# ifndef PNG_ERROR_TEXT_SUPPORTED
412# ifndef PNG_ERROR_TEXT_SUPPORTED
418#define PNG_MAX_ERROR_TEXT 196
419#if defined(PNG_WARNINGS_SUPPORTED) || \
420 (defined(PNG_READ_SUPPORTED) && defined(PNG_ERROR_TEXT_SUPPORTED))
427#define isnonalpha(c) ((c) < 65 || (c) > 122 || ((c) > 90 && (c) < 97))
428static const char png_digit[16] = {
429 '0',
'1',
'2',
'3',
'4',
'5',
'6',
'7',
'8',
'9',
430 'A',
'B',
'C',
'D',
'E',
'F'
438 int iout = 0, ishift = 24;
442 int c = (
int)(chunk_name >> ishift) & 0xff;
445 if (isnonalpha(
c) != 0)
448 buffer[iout++] = png_digit[(
c & 0xf0) >> 4];
449 buffer[iout++] = png_digit[
c & 0x0f];
469 while (iin < PNG_MAX_ERROR_TEXT-1 &&
error_message[iin] !=
'\0')
478#if defined(PNG_READ_SUPPORTED) && defined(PNG_ERROR_TEXT_SUPPORTED)
483 char msg[18+PNG_MAX_ERROR_TEXT];
495#ifdef PNG_WARNINGS_SUPPORTED
499 char msg[18+PNG_MAX_ERROR_TEXT];
501 png_warning(
png_ptr, warning_message);
505 png_format_buffer(
png_ptr,
msg, warning_message);
511#ifdef PNG_READ_SUPPORTED
512#ifdef PNG_BENIGN_ERRORS_SUPPORTED
523# ifndef PNG_ERROR_TEXT_SUPPORTED
533# ifndef PNG_WARNINGS_SUPPORTED
540# if defined(PNG_READ_SUPPORTED) && defined(PNG_WRITE_SUPPORTED)
544# ifdef PNG_READ_SUPPORTED
554# if defined(PNG_READ_SUPPORTED) && defined(PNG_WRITE_SUPPORTED)
558# ifdef PNG_WRITE_SUPPORTED
569#ifdef PNG_ERROR_TEXT_SUPPORTED
570#ifdef PNG_FLOATING_POINT_SUPPORTED
574# define fixed_message "fixed point overflow in "
575# define fixed_message_ln ((sizeof fixed_message)-1)
577 char msg[fixed_message_ln+PNG_MAX_ERROR_TEXT];
578 memcpy(
msg, fixed_message, fixed_message_ln);
581 while (iin < (PNG_MAX_ERROR_TEXT-1) &&
name[iin] != 0)
583 msg[fixed_message_ln + iin] =
name[iin];
586 msg[fixed_message_ln + iin] = 0;
592#ifdef PNG_SETJMP_SUPPORTED
617 if (jmp_buf_size <= (
sizeof png_ptr->jmp_buf_local))
623 png_malloc_warn(
png_ptr, jmp_buf_size));
628 png_ptr->jmp_buf_size = jmp_buf_size;
646 png_error(
png_ptr,
"Libpng jmp_buf still allocated");
651 if (
size != jmp_buf_size)
653 png_warning(
png_ptr,
"Application jmp_buf size changed");
661 png_ptr->longjmp_fn = longjmp_fn;
682 if (jb != &
png_ptr->jmp_buf_local)
687 if (!
setjmp(free_jmp_buf))
689 png_ptr->jmp_buf_ptr = &free_jmp_buf;
714#ifdef PNG_CONSOLE_IO_SUPPORTED
715#ifdef PNG_ERROR_NUMBERS_SUPPORTED
721 char error_number[16];
731 error_number[
offset - 1] =
'\0';
760#ifdef PNG_SETJMP_SUPPORTED
778#ifdef PNG_WARNINGS_SUPPORTED
787#ifdef PNG_CONSOLE_IO_SUPPORTED
788# ifdef PNG_ERROR_NUMBERS_SUPPORTED
792 char warning_number[16];
796 if (warning_message[
offset] ==
' ')
802 warning_number[
offset + 1] =
'\0';
804 warning_number, warning_message +
offset);
836 png_error_ptr error_fn, png_error_ptr warning_fn)
841 png_ptr->error_ptr = error_ptr;
843#ifdef PNG_WARNINGS_SUPPORTED
844 png_ptr->warning_fn = warning_fn;
865#ifdef PNG_ERROR_NUMBERS_SUPPORTED
878#if defined(PNG_SIMPLIFIED_READ_SUPPORTED) ||\
879 defined(PNG_SIMPLIFIED_WRITE_SUPPORTED)
904 longjmp(png_control_jmp_buf(
image->opaque), 1);
908 size_t pos = png_safecat(
image->message, (
sizeof image->message), 0,
919#ifdef PNG_WARNINGS_SUPPORTED
927 if (
image->warning_or_error == 0)
929 png_safecat(
image->message, (
sizeof image->message), 0, warning_message);
944 saved_error_buf =
image->opaque->error_buf;
950 image->opaque->error_buf = safe_jmpbuf;
954 image->opaque->error_buf = saved_error_buf;
958 png_image_free(
image);
void error_message(HWND hwnd, const char *msg)
unsigned int(__cdecl typeof(jpeg_read_scanlines))(struct jpeg_decompress_struct *
GLuint GLuint GLsizei count
GLenum GLuint GLsizei bufsize
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
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 * u
_Check_return_opt_ _CRTIMP int __cdecl fprintf(_Inout_ FILE *_File, _In_z_ _Printf_format_string_ const char *_Format,...)
static const int digits[]
#define memcpy(s1, s2, n)
static unsigned int number
#define PNG_IMAGE_WARNING
const png_struct *PNG_RESTRICT png_const_structrp
png_struct *PNG_RESTRICT png_structrp
#define PNG_FUNCTION(type, name, args, attributes)
const char * png_const_charp
#define PNG_STRING_NEWLINE
#define PNG_LITERAL_SHARP
#define PNG_LITERAL_LEFT_SQUARE_BRACKET
#define PNG_LITERAL_RIGHT_SQUARE_BRACKET
#define PNG_UNUSED(param)
#define png_constcast(type, value)
#define PNG_CHUNK_WRITE_ERROR
#define png_fixed_error(s1, s2)
#define PNG_FLAG_APP_ERRORS_WARN
#define png_warning_parameter_unsigned(p, number, format, value)
#define png_app_error(pp, s)
#define png_app_warning(pp, s)
#define PNG_FLAG_BENIGN_ERRORS_WARN
#define png_warning_parameter_signed(p, number, format, value)
#define PNG_FLAG_APP_WARNINGS_WARN
#define PNG_IS_READ_STRUCT
#define PNG_FLAG_STRIP_ERROR_NUMBERS
#define PNG_FLAG_STRIP_ERROR_TEXT
#define png_warning_parameter(p, number, string)
#define png_voidcast(type, value)
#define png_formatted_warning(pp, p, message)