|
|
@ -4201,7 +4201,7 @@ static int stbi__create_png_image_raw(stbi__png *a, stbi_uc *raw, stbi__uint32 r |
|
|
|
|
|
|
|
|
|
|
|
for (j=0; j < y; ++j) { |
|
|
|
for (j=0; j < y; ++j) { |
|
|
|
stbi_uc *cur = a->out + stride*j; |
|
|
|
stbi_uc *cur = a->out + stride*j; |
|
|
|
stbi_uc *prior = cur - stride; |
|
|
|
stbi_uc *prior; |
|
|
|
int filter = *raw++; |
|
|
|
int filter = *raw++; |
|
|
|
|
|
|
|
|
|
|
|
if (filter > 4) |
|
|
|
if (filter > 4) |
|
|
@ -4213,6 +4213,7 @@ static int stbi__create_png_image_raw(stbi__png *a, stbi_uc *raw, stbi__uint32 r |
|
|
|
filter_bytes = 1; |
|
|
|
filter_bytes = 1; |
|
|
|
width = img_width_bytes; |
|
|
|
width = img_width_bytes; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
prior = cur - stride; // bugfix: need to compute this after 'cur +=' computation above
|
|
|
|
|
|
|
|
|
|
|
|
// if first row, use special filter that doesn't sample previous row
|
|
|
|
// if first row, use special filter that doesn't sample previous row
|
|
|
|
if (j == 0) filter = first_row_filter[filter]; |
|
|
|
if (j == 0) filter = first_row_filter[filter]; |
|
|
|