libimg: tiff: Don't rely on EOI tag at the end of the strip.

Reference implementation (libtiff) has a workaround: precalculate data
size of the strip and don't rely on EOI tag of specific bit length.

This allow to read some invalid TIFF LZW images by my old scanner.

git-svn-id: svn://kolibrios.org@7735 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
2020-03-07 12:54:18 +00:00
parent de8ecf4c59
commit a0a18277da
2 changed files with 118 additions and 174 deletions

View File

@@ -139,7 +139,6 @@ locals
img_data dd ? ; raw bytes
img dd ? ; Image pointer
endl
DEBUGF 2, 'img.from_file: %s\n', [_filename]
push ebx
mov [img], 0
invoke file.open, [_filename], O_READ
@@ -2744,7 +2743,7 @@ img._.get_scanline_len: ;///////////////////////////////////////////////////////
;;////////////////////////////////////////////////////////////////////////////////////////////////;;
;;================================================================================================;;
include_debug_strings
;include_debug_strings
align 4
type2bpp dd 8, 24, 32, 15, 16, 1, 9, 2, 4