Upgrade Group4Reader dimensions from u16 to u32
This commit is contained in:
3 files changed
+24
-3
No files matched your search
@@ -720,3 +720,24 @@ fn extra_bits_gray() {
|
||||
fn extra_bits_rgb() {
|
||||
test_image_sum_u8("extra_bits_rgb_8b.tiff", ColorType::RGB(8), 0);
|
||||
}
|
||||
|
||||
|
||||
#[test]
|
||||
#[cfg(feature = "fax")]
|
||||
fn test_decode_huge_g4() {
|
||||
let path = PathBuf::from(TEST_IMAGE_DIR).join("big_g4.tif");
|
||||
let img_file = File::open(path).expect("failed to open large G4 test image");
|
||||
let mut decoder = tiff::decoder::Decoder::new(img_file).expect("failed to create decoder");
|
||||
|
||||
let (width, height) = decoder.dimensions().expect("failed to get dimensions");
|
||||
|
||||
assert!(height > u16::MAX as u32, "Test image height {} is not large enough to test u16 overflow", height);
|
||||
|
||||
let result = decoder.read_image().expect("failed to decode huge G4 image");
|
||||
|
||||
if let tiff::decoder::DecodingResult::U8(data) = result {
|
||||
assert_eq!(data.len(), (width as usize * height as usize));
|
||||
} else {
|
||||
panic!("Unexpected decoding result type");
|
||||
}
|
||||
}
|
||||
Binary file not shown.
Reference in new issue
Block a user