summaryrefslogtreecommitdiff
path: root/pngvalid.c
diff options
context:
space:
mode:
authorJohn Bowler <jbowler@acm.org>2011-02-12 08:59:17 -0600
committerGlenn Randers-Pehrson <glennrp@shaggy.simplesystems.org>2011-02-12 08:59:17 -0600
commit5432c01ffd6260d19403ce9c1a09b99ab488485e (patch)
tree25d86ed1b82c662b81c02d3b9502f89ad36b7726 /pngvalid.c
parent9c69360e97a305703f9cbcfa78a2526a228bfa43 (diff)
downloadlibpng-5432c01ffd6260d19403ce9c1a09b99ab488485e.tar.gz
[devel] Fix png_get_current_row_number in the interlaced case.
Diffstat (limited to 'pngvalid.c')
-rw-r--r--pngvalid.c6
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)