[ibpng16] Added application error reporting and added chunk names to read
benign errors; also added --strict to pngstest - not enabled yet because a warning is produced.
This commit is contained in:
parent
66efa24241
commit
2bc76ffaf1
3
ANNOUNCE
3
ANNOUNCE
@ -333,6 +333,9 @@ Version 1.6.0beta19 [March 19, 2012]
|
|||||||
row initialization twice; this is an application error and it has
|
row initialization twice; this is an application error and it has
|
||||||
serious consequences because the transform data in png_struct is
|
serious consequences because the transform data in png_struct is
|
||||||
changed by each call.
|
changed by each call.
|
||||||
|
Added application error reporting and added chunk names to read
|
||||||
|
benign errors; also added --strict to pngstest - not enabled
|
||||||
|
yet because a warning is produced.
|
||||||
|
|
||||||
Send comments/corrections/commendations to png-mng-implement at lists.sf.net
|
Send comments/corrections/commendations to png-mng-implement at lists.sf.net
|
||||||
(subscription required; visit
|
(subscription required; visit
|
||||||
|
3
CHANGES
3
CHANGES
@ -4084,6 +4084,9 @@ Version 1.6.0beta19 [March 19, 2012]
|
|||||||
row initialization twice; this is an application error and it has
|
row initialization twice; this is an application error and it has
|
||||||
serious consequences because the transform data in png_struct is
|
serious consequences because the transform data in png_struct is
|
||||||
changed by each call.
|
changed by each call.
|
||||||
|
Added application error reporting and added chunk names to read
|
||||||
|
benign errors; also added --strict to pngstest - not enabled
|
||||||
|
yet because a warning is produced.
|
||||||
|
|
||||||
Send comments/corrections/commendations to png-mng-implement at lists.sf.net
|
Send comments/corrections/commendations to png-mng-implement at lists.sf.net
|
||||||
(subscription required; visit
|
(subscription required; visit
|
||||||
|
39
pngerror.c
39
pngerror.c
@ -360,12 +360,47 @@ png_formatted_warning(png_const_structrp png_ptr, png_warning_parameters p,
|
|||||||
void PNGAPI
|
void PNGAPI
|
||||||
png_benign_error(png_const_structrp png_ptr, png_const_charp error_message)
|
png_benign_error(png_const_structrp png_ptr, png_const_charp error_message)
|
||||||
{
|
{
|
||||||
if (png_ptr->flags & PNG_FLAG_BENIGN_ERRORS_WARN)
|
if (png_ptr->flags & PNG_FLAG_BENIGN_ERRORS_WARN)
|
||||||
|
{
|
||||||
|
# ifdef PNG_READ_SUPPORTED
|
||||||
|
if ((png_ptr->mode & PNG_IS_READ_STRUCT) != 0 &&
|
||||||
|
png_ptr->chunk_name != 0)
|
||||||
|
png_chunk_warning(png_ptr, error_message);
|
||||||
|
else
|
||||||
|
# endif
|
||||||
|
png_warning(png_ptr, error_message);
|
||||||
|
}
|
||||||
|
|
||||||
|
else
|
||||||
|
{
|
||||||
|
# ifdef PNG_READ_SUPPORTED
|
||||||
|
if ((png_ptr->mode & PNG_IS_READ_STRUCT) != 0 &&
|
||||||
|
png_ptr->chunk_name != 0)
|
||||||
|
png_chunk_error(png_ptr, error_message);
|
||||||
|
else
|
||||||
|
# endif
|
||||||
|
png_error(png_ptr, error_message);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void /* PRIVATE */
|
||||||
|
png_app_warning(png_const_structrp png_ptr, png_const_charp error_message)
|
||||||
|
{
|
||||||
|
if (png_ptr->flags & PNG_FLAG_APP_WARNINGS_WARN)
|
||||||
png_warning(png_ptr, error_message);
|
png_warning(png_ptr, error_message);
|
||||||
else
|
else
|
||||||
png_error(png_ptr, error_message);
|
png_error(png_ptr, error_message);
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
void /* PRIVATE */
|
||||||
|
png_app_error(png_const_structrp png_ptr, png_const_charp error_message)
|
||||||
|
{
|
||||||
|
if (png_ptr->flags & PNG_FLAG_APP_ERRORS_WARN)
|
||||||
|
png_warning(png_ptr, error_message);
|
||||||
|
else
|
||||||
|
png_error(png_ptr, error_message);
|
||||||
|
}
|
||||||
|
#endif /* BENIGN_ERRORS */
|
||||||
|
|
||||||
/* These utilities are used internally to build an error message that relates
|
/* These utilities are used internally to build an error message that relates
|
||||||
* to the current chunk. The chunk name comes from png_ptr->chunk_name,
|
* to the current chunk. The chunk name comes from png_ptr->chunk_name,
|
||||||
|
35
pngpriv.h
35
pngpriv.h
@ -532,8 +532,8 @@ typedef const png_uint_16p * png_const_uint_16pp;
|
|||||||
#define PNG_FLAG_STRIP_ERROR_NUMBERS 0x40000
|
#define PNG_FLAG_STRIP_ERROR_NUMBERS 0x40000
|
||||||
#define PNG_FLAG_STRIP_ERROR_TEXT 0x80000
|
#define PNG_FLAG_STRIP_ERROR_TEXT 0x80000
|
||||||
#define PNG_FLAG_BENIGN_ERRORS_WARN 0x100000 /* Added to libpng-1.4.0 */
|
#define PNG_FLAG_BENIGN_ERRORS_WARN 0x100000 /* Added to libpng-1.4.0 */
|
||||||
/* 0x200000 unused */
|
#define PNG_FLAG_APP_WARNINGS_WARN 0x200000 /* Added to libpng-1.6.0 */
|
||||||
/* 0x400000 unused */
|
#define PNG_FLAG_APP_ERRORS_WARN 0x400000 /* Added to libpng-1.6.0 */
|
||||||
/* 0x800000 unused */
|
/* 0x800000 unused */
|
||||||
/* 0x1000000 unused */
|
/* 0x1000000 unused */
|
||||||
/* 0x2000000 unused */
|
/* 0x2000000 unused */
|
||||||
@ -1530,6 +1530,37 @@ PNG_INTERNAL_FUNCTION(void,png_formatted_warning,(png_const_structrp png_ptr,
|
|||||||
*/
|
*/
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef PNG_BENIGN_ERRORS_SUPPORTED
|
||||||
|
/* Application errors (new in 1.6); use these functions (declared below) for
|
||||||
|
* errors in the parameters or order of API function calls on read. The
|
||||||
|
* 'warning' should be used for an error that can be handled completely, the
|
||||||
|
* 'error' for one which can be handled safely but which may lose application
|
||||||
|
* information or settings.
|
||||||
|
*
|
||||||
|
* By default these both result in a png_error call prior to release, while in a
|
||||||
|
* released version the 'warning' is just a warning. However if the application
|
||||||
|
* explicitly disables benign errors (explicitly permitting the code to lose
|
||||||
|
* information) they both turn into warnings.
|
||||||
|
*
|
||||||
|
* If benign errors aren't supported they end up as the corresponding base call
|
||||||
|
* (png_warning or png_error.)
|
||||||
|
*/
|
||||||
|
PNG_INTERNAL_FUNCTION(void,png_app_warning,(png_const_structrp png_ptr,
|
||||||
|
png_const_charp message),PNG_EMPTY);
|
||||||
|
/* The application provided invalid parameters to an API function or called
|
||||||
|
* an API function at the wrong time, libpng can completely recovered.
|
||||||
|
*/
|
||||||
|
|
||||||
|
PNG_INTERNAL_FUNCTION(void,png_app_error,(png_const_structrp png_ptr,
|
||||||
|
png_const_charp message),PNG_EMPTY);
|
||||||
|
/* As above but libpng will ignore the call, or attempt some other partial
|
||||||
|
* recovery from the error.
|
||||||
|
*/
|
||||||
|
#else
|
||||||
|
# define png_app_warning(pp,s) png_warning(pp,s)
|
||||||
|
# define png_app_error(pp,s) png_error(pp,s)
|
||||||
|
#endif
|
||||||
|
|
||||||
/* ASCII to FP interfaces, currently only implemented if sCAL
|
/* ASCII to FP interfaces, currently only implemented if sCAL
|
||||||
* support is required.
|
* support is required.
|
||||||
*/
|
*/
|
||||||
|
11
pngread.c
11
pngread.c
@ -59,6 +59,13 @@ png_create_read_struct_2,(png_const_charp user_png_ver, png_voidp error_ptr,
|
|||||||
|
|
||||||
# ifdef PNG_BENIGN_READ_ERRORS_SUPPORTED
|
# ifdef PNG_BENIGN_READ_ERRORS_SUPPORTED
|
||||||
png_ptr->flags |= PNG_FLAG_BENIGN_ERRORS_WARN;
|
png_ptr->flags |= PNG_FLAG_BENIGN_ERRORS_WARN;
|
||||||
|
|
||||||
|
/* In stable builds only warn if an application error can be completely
|
||||||
|
* handled.
|
||||||
|
*/
|
||||||
|
# if PNG_LIBPNG_BUILD_BASE_TYPE == PNG_LIBPNG_BUILD_STABLE
|
||||||
|
png_ptr->flags |= PNG_FLAG_APP_WARNINGS_WARN;
|
||||||
|
# endif
|
||||||
# endif
|
# endif
|
||||||
|
|
||||||
/* TODO: delay this, it can be done in png_init_io (if the app doesn't
|
/* TODO: delay this, it can be done in png_init_io (if the app doesn't
|
||||||
@ -264,7 +271,7 @@ png_read_update_info(png_structrp png_ptr, png_inforp info_ptr)
|
|||||||
|
|
||||||
/* New in 1.6.0 this avoids the bug of doing the initializations twice */
|
/* New in 1.6.0 this avoids the bug of doing the initializations twice */
|
||||||
else
|
else
|
||||||
png_error(png_ptr,
|
png_app_error(png_ptr,
|
||||||
"png_read_update_info/png_start_read_image: duplicate call");
|
"png_read_update_info/png_start_read_image: duplicate call");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -287,7 +294,7 @@ png_start_read_image(png_structrp png_ptr)
|
|||||||
|
|
||||||
/* New in 1.6.0 this avoids the bug of doing the initializations twice */
|
/* New in 1.6.0 this avoids the bug of doing the initializations twice */
|
||||||
else
|
else
|
||||||
png_error(png_ptr,
|
png_app_error(png_ptr,
|
||||||
"png_start_read_image/png_read_update_info: duplicate call");
|
"png_start_read_image/png_read_update_info: duplicate call");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
15
pngrtran.c
15
pngrtran.c
@ -99,16 +99,19 @@ png_rtran_ok(png_structrp png_ptr, int need_IHDR)
|
|||||||
if (png_ptr != NULL)
|
if (png_ptr != NULL)
|
||||||
{
|
{
|
||||||
if (png_ptr->flags & PNG_FLAG_ROW_INIT)
|
if (png_ptr->flags & PNG_FLAG_ROW_INIT)
|
||||||
png_error(png_ptr,
|
png_app_error(png_ptr,
|
||||||
"invalid after png_start_read_image or png_read_update_info");
|
"invalid after png_start_read_image or png_read_update_info");
|
||||||
|
|
||||||
if (need_IHDR && (png_ptr->mode & PNG_HAVE_IHDR) == 0)
|
else if (need_IHDR && (png_ptr->mode & PNG_HAVE_IHDR) == 0)
|
||||||
png_error(png_ptr, "invalid before the PNG header has been read");
|
png_app_error(png_ptr, "invalid before the PNG header has been read");
|
||||||
|
|
||||||
/* Turn on failure to initialize correctly for all transforms. */
|
else
|
||||||
png_ptr->flags |= PNG_FLAG_DETECT_UNINITIALIZED;
|
{
|
||||||
|
/* Turn on failure to initialize correctly for all transforms. */
|
||||||
|
png_ptr->flags |= PNG_FLAG_DETECT_UNINITIALIZED;
|
||||||
|
|
||||||
return 1; /* Ok */
|
return 1; /* Ok */
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return 0; /* no png_error possible! */
|
return 0; /* no png_error possible! */
|
||||||
|
@ -21,8 +21,8 @@ MCommand
|
|||||||
0
|
0
|
||||||
5
|
5
|
||||||
MCommand
|
MCommand
|
||||||
1109
|
1118
|
||||||
pngstest --log ../../contrib/pngsuite/basn0g01.png ../../contrib/pngsuite/basn0g02.png ../../contrib/pngsuite/basn0g04.png ../../contrib/pngsuite/basn0g08.png ../../contrib/pngsuite/basn0g16.png ../../contrib/pngsuite/basn2c08.png ../../contrib/pngsuite/basn2c16.png ../../contrib/pngsuite/basn3p01.png ../../contrib/pngsuite/basn3p02.png ../../contrib/pngsuite/basn3p04.png ../../contrib/pngsuite/basn3p08.png ../../contrib/pngsuite/basn4a08.png ../../contrib/pngsuite/basn4a16.png ../../contrib/pngsuite/basn6a08.png ../../contrib/pngsuite/basn6a16.png ../../contrib/pngsuite/ftbbn0g04.png ../../contrib/pngsuite/ftbbn0g01.png ../../contrib/pngsuite/ftbbn0g02.png ../../contrib/pngsuite/ftbbn2c16.png ../../contrib/pngsuite/ftbbn3p08.png ../../contrib/pngsuite/ftbgn2c16.png ../../contrib/pngsuite/ftbgn3p08.png ../../contrib/pngsuite/ftbrn2c08.png ../../contrib/pngsuite/ftbwn0g16.png ../../contrib/pngsuite/ftbwn3p08.png ../../contrib/pngsuite/ftbyn3p08.png ../../contrib/pngsuite/ftp0n0g08.png ../../contrib/pngsuite/ftp0n2c08.png ../../contrib/pngsuite/ftp0n3p08.png ../../contrib/pngsuite/ftp1n3p08.png
|
pngstest --strict --log ../../contrib/pngsuite/basn0g01.png ../../contrib/pngsuite/basn0g02.png ../../contrib/pngsuite/basn0g04.png ../../contrib/pngsuite/basn0g08.png ../../contrib/pngsuite/basn0g16.png ../../contrib/pngsuite/basn2c08.png ../../contrib/pngsuite/basn2c16.png ../../contrib/pngsuite/basn3p01.png ../../contrib/pngsuite/basn3p02.png ../../contrib/pngsuite/basn3p04.png ../../contrib/pngsuite/basn3p08.png ../../contrib/pngsuite/basn4a08.png ../../contrib/pngsuite/basn4a16.png ../../contrib/pngsuite/basn6a08.png ../../contrib/pngsuite/basn6a16.png ../../contrib/pngsuite/ftbbn0g04.png ../../contrib/pngsuite/ftbbn0g01.png ../../contrib/pngsuite/ftbbn0g02.png ../../contrib/pngsuite/ftbbn2c16.png ../../contrib/pngsuite/ftbbn3p08.png ../../contrib/pngsuite/ftbgn2c16.png ../../contrib/pngsuite/ftbgn3p08.png ../../contrib/pngsuite/ftbrn2c08.png ../../contrib/pngsuite/ftbwn0g16.png ../../contrib/pngsuite/ftbwn3p08.png ../../contrib/pngsuite/ftbyn3p08.png ../../contrib/pngsuite/ftp0n0g08.png ../../contrib/pngsuite/ftp0n2c08.png ../../contrib/pngsuite/ftp0n3p08.png ../../contrib/pngsuite/ftp1n3p08.png
|
||||||
6
|
6
|
||||||
MItem
|
MItem
|
||||||
12
|
12
|
||||||
|
@ -100,7 +100,7 @@
|
|||||||
</Link>
|
</Link>
|
||||||
<CustomBuildStep>
|
<CustomBuildStep>
|
||||||
<Message>Executing libpng simplified API test program</Message>
|
<Message>Executing libpng simplified API test program</Message>
|
||||||
<Command>"$(OutDir)pngstest.exe" --log --touch "$(IntDir)pngstest.out" ../../../contrib/pngsuite/basn0g01.png ../../../contrib/pngsuite/basn0g02.png ../../../contrib/pngsuite/basn0g04.png ../../../contrib/pngsuite/basn0g08.png ../../../contrib/pngsuite/basn0g16.png ../../../contrib/pngsuite/basn2c08.png ../../../contrib/pngsuite/basn2c16.png ../../../contrib/pngsuite/basn3p01.png ../../../contrib/pngsuite/basn3p02.png ../../../contrib/pngsuite/basn3p04.png ../../../contrib/pngsuite/basn3p08.png ../../../contrib/pngsuite/basn4a08.png ../../../contrib/pngsuite/basn4a16.png ../../../contrib/pngsuite/basn6a08.png ../../../contrib/pngsuite/basn6a16.png ../../../contrib/pngsuite/ftbbn0g01.png ../../../contrib/pngsuite/ftbbn0g02.png ../../../contrib/pngsuite/ftbbn0g04.png ../../../contrib/pngsuite/ftbbn2c16.png ../../../contrib/pngsuite/ftbbn3p08.png ../../../contrib/pngsuite/ftbgn2c16.png ../../../contrib/pngsuite/ftbgn3p08.png ../../../contrib/pngsuite/ftbrn2c08.png ../../../contrib/pngsuite/ftbwn0g16.png ../../../contrib/pngsuite/ftbwn3p08.png ../../../contrib/pngsuite/ftbyn3p08.png ../../../contrib/pngsuite/ftp0n0g08.png ../../../contrib/pngsuite/ftp0n2c08.png ../../../contrib/pngsuite/ftp0n3p08.png ../../../contrib/pngsuite/ftp1n3p08.png</Command>
|
<Command>"$(OutDir)pngstest.exe" --strict --log --touch "$(IntDir)pngstest.out" ../../../contrib/pngsuite/basn0g01.png ../../../contrib/pngsuite/basn0g02.png ../../../contrib/pngsuite/basn0g04.png ../../../contrib/pngsuite/basn0g08.png ../../../contrib/pngsuite/basn0g16.png ../../../contrib/pngsuite/basn2c08.png ../../../contrib/pngsuite/basn2c16.png ../../../contrib/pngsuite/basn3p01.png ../../../contrib/pngsuite/basn3p02.png ../../../contrib/pngsuite/basn3p04.png ../../../contrib/pngsuite/basn3p08.png ../../../contrib/pngsuite/basn4a08.png ../../../contrib/pngsuite/basn4a16.png ../../../contrib/pngsuite/basn6a08.png ../../../contrib/pngsuite/basn6a16.png ../../../contrib/pngsuite/ftbbn0g01.png ../../../contrib/pngsuite/ftbbn0g02.png ../../../contrib/pngsuite/ftbbn0g04.png ../../../contrib/pngsuite/ftbbn2c16.png ../../../contrib/pngsuite/ftbbn3p08.png ../../../contrib/pngsuite/ftbgn2c16.png ../../../contrib/pngsuite/ftbgn3p08.png ../../../contrib/pngsuite/ftbrn2c08.png ../../../contrib/pngsuite/ftbwn0g16.png ../../../contrib/pngsuite/ftbwn3p08.png ../../../contrib/pngsuite/ftbyn3p08.png ../../../contrib/pngsuite/ftp0n0g08.png ../../../contrib/pngsuite/ftp0n2c08.png ../../../contrib/pngsuite/ftp0n3p08.png ../../../contrib/pngsuite/ftp1n3p08.png</Command>
|
||||||
<Outputs>$(IntDir)pngstest.out</Outputs>
|
<Outputs>$(IntDir)pngstest.out</Outputs>
|
||||||
<Inputs>$(OutDir)pngstest.exe</Inputs>
|
<Inputs>$(OutDir)pngstest.exe</Inputs>
|
||||||
</CustomBuildStep>
|
</CustomBuildStep>
|
||||||
@ -133,7 +133,7 @@
|
|||||||
</Link>
|
</Link>
|
||||||
<CustomBuildStep>
|
<CustomBuildStep>
|
||||||
<Message>Executing libpng simplified API test program</Message>
|
<Message>Executing libpng simplified API test program</Message>
|
||||||
<Command>"$(OutDir)pngstest.exe" --log --touch "$(IntDir)pngstest.out" ../../../contrib/pngsuite/basn0g01.png ../../../contrib/pngsuite/basn0g02.png ../../../contrib/pngsuite/basn0g04.png ../../../contrib/pngsuite/basn0g08.png ../../../contrib/pngsuite/basn0g16.png ../../../contrib/pngsuite/basn2c08.png ../../../contrib/pngsuite/basn2c16.png ../../../contrib/pngsuite/basn3p01.png ../../../contrib/pngsuite/basn3p02.png ../../../contrib/pngsuite/basn3p04.png ../../../contrib/pngsuite/basn3p08.png ../../../contrib/pngsuite/basn4a08.png ../../../contrib/pngsuite/basn4a16.png ../../../contrib/pngsuite/basn6a08.png ../../../contrib/pngsuite/basn6a16.png ../../../contrib/pngsuite/ftbbn0g01.png ../../../contrib/pngsuite/ftbbn0g02.png ../../../contrib/pngsuite/ftbbn0g04.png ../../../contrib/pngsuite/ftbbn2c16.png ../../../contrib/pngsuite/ftbbn3p08.png ../../../contrib/pngsuite/ftbgn2c16.png ../../../contrib/pngsuite/ftbgn3p08.png ../../../contrib/pngsuite/ftbrn2c08.png ../../../contrib/pngsuite/ftbwn0g16.png ../../../contrib/pngsuite/ftbwn3p08.png ../../../contrib/pngsuite/ftbyn3p08.png ../../../contrib/pngsuite/ftp0n0g08.png ../../../contrib/pngsuite/ftp0n2c08.png ../../../contrib/pngsuite/ftp0n3p08.png ../../../contrib/pngsuite/ftp1n3p08.png</Command>
|
<Command>"$(OutDir)pngstest.exe" --strict --log --touch "$(IntDir)pngstest.out" ../../../contrib/pngsuite/basn0g01.png ../../../contrib/pngsuite/basn0g02.png ../../../contrib/pngsuite/basn0g04.png ../../../contrib/pngsuite/basn0g08.png ../../../contrib/pngsuite/basn0g16.png ../../../contrib/pngsuite/basn2c08.png ../../../contrib/pngsuite/basn2c16.png ../../../contrib/pngsuite/basn3p01.png ../../../contrib/pngsuite/basn3p02.png ../../../contrib/pngsuite/basn3p04.png ../../../contrib/pngsuite/basn3p08.png ../../../contrib/pngsuite/basn4a08.png ../../../contrib/pngsuite/basn4a16.png ../../../contrib/pngsuite/basn6a08.png ../../../contrib/pngsuite/basn6a16.png ../../../contrib/pngsuite/ftbbn0g01.png ../../../contrib/pngsuite/ftbbn0g02.png ../../../contrib/pngsuite/ftbbn0g04.png ../../../contrib/pngsuite/ftbbn2c16.png ../../../contrib/pngsuite/ftbbn3p08.png ../../../contrib/pngsuite/ftbgn2c16.png ../../../contrib/pngsuite/ftbgn3p08.png ../../../contrib/pngsuite/ftbrn2c08.png ../../../contrib/pngsuite/ftbwn0g16.png ../../../contrib/pngsuite/ftbwn3p08.png ../../../contrib/pngsuite/ftbyn3p08.png ../../../contrib/pngsuite/ftp0n0g08.png ../../../contrib/pngsuite/ftp0n2c08.png ../../../contrib/pngsuite/ftp0n3p08.png ../../../contrib/pngsuite/ftp1n3p08.png</Command>
|
||||||
<Outputs>$(IntDir)pngstest.out</Outputs>
|
<Outputs>$(IntDir)pngstest.out</Outputs>
|
||||||
<Inputs>$(OutDir)pngstest.exe</Inputs>
|
<Inputs>$(OutDir)pngstest.exe</Inputs>
|
||||||
</CustomBuildStep>
|
</CustomBuildStep>
|
||||||
@ -168,7 +168,7 @@
|
|||||||
</Link>
|
</Link>
|
||||||
<CustomBuildStep>
|
<CustomBuildStep>
|
||||||
<Message>Executing libpng simplified API test program</Message>
|
<Message>Executing libpng simplified API test program</Message>
|
||||||
<Command>"$(OutDir)pngstest.exe" --log --touch "$(IntDir)pngstest.out" ../../../contrib/pngsuite/basn0g01.png ../../../contrib/pngsuite/basn0g02.png ../../../contrib/pngsuite/basn0g04.png ../../../contrib/pngsuite/basn0g08.png ../../../contrib/pngsuite/basn0g16.png ../../../contrib/pngsuite/basn2c08.png ../../../contrib/pngsuite/basn2c16.png ../../../contrib/pngsuite/basn3p01.png ../../../contrib/pngsuite/basn3p02.png ../../../contrib/pngsuite/basn3p04.png ../../../contrib/pngsuite/basn3p08.png ../../../contrib/pngsuite/basn4a08.png ../../../contrib/pngsuite/basn4a16.png ../../../contrib/pngsuite/basn6a08.png ../../../contrib/pngsuite/basn6a16.png ../../../contrib/pngsuite/ftbbn0g01.png ../../../contrib/pngsuite/ftbbn0g02.png ../../../contrib/pngsuite/ftbbn0g04.png ../../../contrib/pngsuite/ftbbn2c16.png ../../../contrib/pngsuite/ftbbn3p08.png ../../../contrib/pngsuite/ftbgn2c16.png ../../../contrib/pngsuite/ftbgn3p08.png ../../../contrib/pngsuite/ftbrn2c08.png ../../../contrib/pngsuite/ftbwn0g16.png ../../../contrib/pngsuite/ftbwn3p08.png ../../../contrib/pngsuite/ftbyn3p08.png ../../../contrib/pngsuite/ftp0n0g08.png ../../../contrib/pngsuite/ftp0n2c08.png ../../../contrib/pngsuite/ftp0n3p08.png ../../../contrib/pngsuite/ftp1n3p08.png</Command>
|
<Command>"$(OutDir)pngstest.exe" --strict --log --touch "$(IntDir)pngstest.out" ../../../contrib/pngsuite/basn0g01.png ../../../contrib/pngsuite/basn0g02.png ../../../contrib/pngsuite/basn0g04.png ../../../contrib/pngsuite/basn0g08.png ../../../contrib/pngsuite/basn0g16.png ../../../contrib/pngsuite/basn2c08.png ../../../contrib/pngsuite/basn2c16.png ../../../contrib/pngsuite/basn3p01.png ../../../contrib/pngsuite/basn3p02.png ../../../contrib/pngsuite/basn3p04.png ../../../contrib/pngsuite/basn3p08.png ../../../contrib/pngsuite/basn4a08.png ../../../contrib/pngsuite/basn4a16.png ../../../contrib/pngsuite/basn6a08.png ../../../contrib/pngsuite/basn6a16.png ../../../contrib/pngsuite/ftbbn0g01.png ../../../contrib/pngsuite/ftbbn0g02.png ../../../contrib/pngsuite/ftbbn0g04.png ../../../contrib/pngsuite/ftbbn2c16.png ../../../contrib/pngsuite/ftbbn3p08.png ../../../contrib/pngsuite/ftbgn2c16.png ../../../contrib/pngsuite/ftbgn3p08.png ../../../contrib/pngsuite/ftbrn2c08.png ../../../contrib/pngsuite/ftbwn0g16.png ../../../contrib/pngsuite/ftbwn3p08.png ../../../contrib/pngsuite/ftbyn3p08.png ../../../contrib/pngsuite/ftp0n0g08.png ../../../contrib/pngsuite/ftp0n2c08.png ../../../contrib/pngsuite/ftp0n3p08.png ../../../contrib/pngsuite/ftp1n3p08.png</Command>
|
||||||
<Outputs>$(IntDir)pngstest.out</Outputs>
|
<Outputs>$(IntDir)pngstest.out</Outputs>
|
||||||
<Inputs>$(OutDir)pngstest.exe</Inputs>
|
<Inputs>$(OutDir)pngstest.exe</Inputs>
|
||||||
</CustomBuildStep>
|
</CustomBuildStep>
|
||||||
@ -204,7 +204,7 @@
|
|||||||
</Link>
|
</Link>
|
||||||
<CustomBuildStep>
|
<CustomBuildStep>
|
||||||
<Message>Executing libpng simplified API test program</Message>
|
<Message>Executing libpng simplified API test program</Message>
|
||||||
<Command>"$(OutDir)pngstest.exe" --log --touch "$(IntDir)pngstest.out" ../../../contrib/pngsuite/basn0g01.png ../../../contrib/pngsuite/basn0g02.png ../../../contrib/pngsuite/basn0g04.png ../../../contrib/pngsuite/basn0g08.png ../../../contrib/pngsuite/basn0g16.png ../../../contrib/pngsuite/basn2c08.png ../../../contrib/pngsuite/basn2c16.png ../../../contrib/pngsuite/basn3p01.png ../../../contrib/pngsuite/basn3p02.png ../../../contrib/pngsuite/basn3p04.png ../../../contrib/pngsuite/basn3p08.png ../../../contrib/pngsuite/basn4a08.png ../../../contrib/pngsuite/basn4a16.png ../../../contrib/pngsuite/basn6a08.png ../../../contrib/pngsuite/basn6a16.png ../../../contrib/pngsuite/ftbbn0g01.png ../../../contrib/pngsuite/ftbbn0g02.png ../../../contrib/pngsuite/ftbbn0g04.png ../../../contrib/pngsuite/ftbbn2c16.png ../../../contrib/pngsuite/ftbbn3p08.png ../../../contrib/pngsuite/ftbgn2c16.png ../../../contrib/pngsuite/ftbgn3p08.png ../../../contrib/pngsuite/ftbrn2c08.png ../../../contrib/pngsuite/ftbwn0g16.png ../../../contrib/pngsuite/ftbwn3p08.png ../../../contrib/pngsuite/ftbyn3p08.png ../../../contrib/pngsuite/ftp0n0g08.png ../../../contrib/pngsuite/ftp0n2c08.png ../../../contrib/pngsuite/ftp0n3p08.png ../../../contrib/pngsuite/ftp1n3p08.png</Command>
|
<Command>"$(OutDir)pngstest.exe" --strict --log --touch "$(IntDir)pngstest.out" ../../../contrib/pngsuite/basn0g01.png ../../../contrib/pngsuite/basn0g02.png ../../../contrib/pngsuite/basn0g04.png ../../../contrib/pngsuite/basn0g08.png ../../../contrib/pngsuite/basn0g16.png ../../../contrib/pngsuite/basn2c08.png ../../../contrib/pngsuite/basn2c16.png ../../../contrib/pngsuite/basn3p01.png ../../../contrib/pngsuite/basn3p02.png ../../../contrib/pngsuite/basn3p04.png ../../../contrib/pngsuite/basn3p08.png ../../../contrib/pngsuite/basn4a08.png ../../../contrib/pngsuite/basn4a16.png ../../../contrib/pngsuite/basn6a08.png ../../../contrib/pngsuite/basn6a16.png ../../../contrib/pngsuite/ftbbn0g01.png ../../../contrib/pngsuite/ftbbn0g02.png ../../../contrib/pngsuite/ftbbn0g04.png ../../../contrib/pngsuite/ftbbn2c16.png ../../../contrib/pngsuite/ftbbn3p08.png ../../../contrib/pngsuite/ftbgn2c16.png ../../../contrib/pngsuite/ftbgn3p08.png ../../../contrib/pngsuite/ftbrn2c08.png ../../../contrib/pngsuite/ftbwn0g16.png ../../../contrib/pngsuite/ftbwn3p08.png ../../../contrib/pngsuite/ftbyn3p08.png ../../../contrib/pngsuite/ftp0n0g08.png ../../../contrib/pngsuite/ftp0n2c08.png ../../../contrib/pngsuite/ftp0n3p08.png ../../../contrib/pngsuite/ftp1n3p08.png</Command>
|
||||||
<Outputs>$(IntDir)pngstest.out</Outputs>
|
<Outputs>$(IntDir)pngstest.out</Outputs>
|
||||||
<Inputs>$(OutDir)pngstest.exe</Inputs>
|
<Inputs>$(OutDir)pngstest.exe</Inputs>
|
||||||
</CustomBuildStep>
|
</CustomBuildStep>
|
||||||
|
Loading…
Reference in New Issue
Block a user