X-Git-Url: http://git.cinelerra-gg.org/git/?p=goodguy%2Fhistory.git;a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Flibmjpeg.C;h=f2df6ddc4631c0a002a817941126acca66c67af1;hp=b16140235899e6cce5f382e5ced6b01c4a7507f7;hb=2e48b660e37eb5c661264d601211e16cb6cd6e89;hpb=49f85559268fc040fe7ba5611cc0520793cf728b diff --git a/cinelerra-5.1/cinelerra/libmjpeg.C b/cinelerra-5.1/cinelerra/libmjpeg.C index b1614023..f2df6ddc 100644 --- a/cinelerra-5.1/cinelerra/libmjpeg.C +++ b/cinelerra-5.1/cinelerra/libmjpeg.C @@ -704,17 +704,18 @@ static void get_mcu_rows(mjpeg_t *mjpeg, mjpeg_compressor *engine, int start_row) { - int i, j, scanline; + int i, j, scanline, lastline; for(i = 0; i < 3; i++) { for(j = 0; j < 16; j++) { - if(i > 0 && j >= 8 && mjpeg->jpeg_color_model == BC_YUV420P) break; - scanline = start_row; - if(i > 0 && mjpeg->jpeg_color_model == BC_YUV420P) scanline /= 2; + lastline = engine->coded_field_h; + if(i > 0 && mjpeg->jpeg_color_model == BC_YUV420P) { + lastline /= 2; scanline /= 2; + } scanline += j; - if(scanline >= engine->coded_field_h) scanline = engine->coded_field_h - 1; + if(scanline >= lastline) scanline = lastline - 1; engine->mcu_rows[i][j] = engine->rows[i][scanline]; } }