diff options
author | John Bowler <jbowler@acm.org> | 2011-02-12 08:59:17 -0600 |
---|---|---|
committer | Glenn Randers-Pehrson <glennrp@shaggy.simplesystems.org> | 2011-02-12 08:59:17 -0600 |
commit | 5432c01ffd6260d19403ce9c1a09b99ab488485e (patch) | |
tree | 25d86ed1b82c662b81c02d3b9502f89ad36b7726 /pngvalid.c | |
parent | 9c69360e97a305703f9cbcfa78a2526a228bfa43 (diff) | |
download | libpng-5432c01ffd6260d19403ce9c1a09b99ab488485e.tar.gz |
[devel] Fix png_get_current_row_number in the interlaced case.
Diffstat (limited to 'pngvalid.c')
-rw-r--r-- | pngvalid.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/pngvalid.c b/pngvalid.c index 8724420dc..417d71b4a 100644 --- a/pngvalid.c +++ b/pngvalid.c @@ -3072,7 +3072,13 @@ progressive_row(png_structp pp, png_bytep new_row, png_uint_32 y, int pass) * us the y in the sub-image: */ if (dp->do_interlace && dp->interlace_type == PNG_INTERLACE_ADAM7) + { + if (pass != png_get_current_pass_number(pp)) + png_error(pp, "png_get_current_pass_number is broken"); y = PNG_ROW_FROM_PASS_ROW(y, pass); + if (y != png_get_current_row_number(pp)) + png_error(pp, "png_get_current_row_number is broken"); + } /* Validate this just in case. */ if (y >= dp->h) |