Avoiding conditional directives that break statements

This commit is contained in:
Romero B. de S. Malaquias 2017-01-20 16:31:54 -03:00 committed by GitHub
parent ae794eefaa
commit c3f4e5fb1a

View File

@ -677,6 +677,8 @@ png_write_IHDR(png_structrp png_ptr, png_uint_32 width, png_uint_32 height,
png_byte buf[13]; /* Buffer to store the IHDR info */
png_debug(1, "in png_write_IHDR");
int is_invalid_depth;
/* Check that we have valid input data from the application info */
switch (color_type)
@ -700,11 +702,11 @@ png_write_IHDR(png_structrp png_ptr, png_uint_32 width, png_uint_32 height,
break;
case PNG_COLOR_TYPE_RGB:
is_invalid_depth = (bit_depth != 8);
#ifdef PNG_WRITE_16BIT_SUPPORTED
if (bit_depth != 8 && bit_depth != 16)
#else
if (bit_depth != 8)
is_invalid_depth = (is_invalid_depth && bit_depth != 16);
#endif
if (is_invalid_depth)
png_error(png_ptr, "Invalid bit depth for RGB image");
png_ptr->channels = 3;