18 #if defined(PNG_READ_SUPPORTED) || defined(PNG_WRITE_SUPPORTED) 23 #ifndef PNG_NO_WARNINGS 34 #ifndef PNG_NO_ERROR_TEXT 38 #ifdef PNG_ERROR_NUMBERS_SUPPORTED 43 (PNG_FLAG_STRIP_ERROR_NUMBERS|PNG_FLAG_STRIP_ERROR_TEXT))
45 if (*error_message ==
'#')
49 for (offset = 1; offset<15; offset++)
50 if (error_message[offset] ==
' ')
52 if (png_ptr->flags&PNG_FLAG_STRIP_ERROR_TEXT)
55 for (i = 0; i < offset - 1; i++)
56 msg[i] = error_message[i + 1];
61 error_message += offset;
65 if (png_ptr->flags&PNG_FLAG_STRIP_ERROR_TEXT)
75 if (png_ptr != NULL && png_ptr->error_fn != NULL)
86 if (png_ptr != NULL && png_ptr->error_fn != NULL)
87 (*(png_ptr->error_fn))(png_ptr,
'\0');
95 #ifndef PNG_NO_WARNINGS 107 #ifdef PNG_ERROR_NUMBERS_SUPPORTED 109 (PNG_FLAG_STRIP_ERROR_NUMBERS|PNG_FLAG_STRIP_ERROR_TEXT))
112 if (*warning_message ==
'#')
114 for (offset = 1; offset < 15; offset++)
115 if (warning_message[offset] ==
' ')
119 if (png_ptr != NULL && png_ptr->warning_fn != NULL)
120 (*(png_ptr->warning_fn))(png_ptr, warning_message + offset);
134 #define isnonalpha(c) ((c) < 65 || (c) > 122 || ((c) > 90 && (c) < 97)) 136 '0',
'1',
'2',
'3',
'4',
'5',
'6',
'7',
'8',
'9',
137 'A',
'B',
'C',
'D',
'E',
'F' 140 #define PNG_MAX_ERROR_TEXT 64 142 #if !defined(PNG_NO_WARNINGS) || !defined(PNG_NO_ERROR_TEXT) 147 int iout = 0, iin = 0;
151 int c = png_ptr->chunk_name[iin++];
154 buffer[iout++] =
'[';
155 buffer[iout++] = png_digit[(c & 0xf0) >> 4];
156 buffer[iout++] = png_digit[c & 0x0f];
157 buffer[iout++] =
']';
165 if (error_message == NULL)
169 buffer[iout++] =
':';
170 buffer[iout++] =
' ';
176 #ifdef PNG_READ_SUPPORTED 192 #ifndef PNG_NO_WARNINGS 216 #ifndef PNG_NO_CONSOLE_IO 217 #ifdef PNG_ERROR_NUMBERS_SUPPORTED 218 if (*error_message ==
'#')
222 char error_number[16];
223 for (offset = 0; offset<15; offset++)
225 error_number[offset] = error_message[offset + 1];
226 if (error_message[offset] ==
' ')
229 if ((offset > 1) && (offset < 15))
231 error_number[offset - 1] =
'\0';
232 fprintf(stderr,
"libpng error no. %s: %s\n", error_number,
233 error_message + offset + 1);
236 fprintf(stderr,
"libpng error: %s, offset=%d\n", error_message, offset);
240 fprintf(stderr,
"libpng error: %s\n", error_message);
243 #ifdef PNG_SETJMP_SUPPORTED 246 # ifdef USE_FAR_KEYWORD 253 longjmp(png_ptr->jmpbuf, 1);
259 #ifdef PNG_NO_CONSOLE_IO 264 #ifndef PNG_NO_WARNINGS 273 #ifndef PNG_NO_CONSOLE_IO 274 # ifdef PNG_ERROR_NUMBERS_SUPPORTED 275 if (*warning_message ==
'#')
278 char warning_number[16];
279 for (offset = 0; offset < 15; offset++)
281 warning_number[offset] = warning_message[offset + 1];
282 if (warning_message[offset] ==
' ')
285 if ((offset > 1) && (offset < 15))
287 warning_number[offset + 1] =
'\0';
288 fprintf(stderr,
"libpng warning no. %s: %s\n", warning_number,
289 warning_message + offset);
292 fprintf(stderr,
"libpng warning: %s\n", warning_message);
296 fprintf(stderr,
"libpng warning: %s\n", warning_message);
334 #ifdef PNG_ERROR_NUMBERS_SUPPORTED 341 ((~(PNG_FLAG_STRIP_ERROR_NUMBERS|PNG_FLAG_STRIP_ERROR_TEXT))&
strip_mode);
static void png_default_error PNGARG((png_structp png_ptr, png_const_charp error_message))
static PNG_CONST char png_digit[16]
void PNGAPI png_set_strip_error_numbers(png_structp png_ptr, png_uint_32 strip_mode)
void PNGAPI png_chunk_warning(png_structp png_ptr, png_const_charp warning_message)
png_voidp PNGAPI png_get_error_ptr(png_structp png_ptr)
png_const_charp error_message
static void png_format_buffer(png_structp png_ptr, png_charp buffer, png_const_charp error_message)
PNG_CONST char FAR * png_const_charp
png_voidp png_error_ptr png_error_ptr warning_fn
png_struct FAR * png_structp
void PNGAPI png_error(png_structp png_ptr, png_const_charp error_message)
static void png_default_error(png_structp png_ptr, png_const_charp error_message)
png_voidp png_error_ptr error_fn
void PNGAPI png_warning(png_structp png_ptr, png_const_charp warning_message)
void PNGAPI png_chunk_error(png_structp png_ptr, png_const_charp error_message)
static void png_default_warning(png_structp png_ptr, png_const_charp warning_message)
png_const_charp warning_message
png_infop png_bytep buffer
unsigned long png_uint_32
void PNGAPI png_set_error_fn(png_structp png_ptr, png_voidp error_ptr, png_error_ptr error_fn, png_error_ptr warning_fn)
#define PNG_MAX_ERROR_TEXT