2010.04.29 23:38 "Re: [Tiff] "flexible" mode in TIFFClientOpen ?", by Dmitry Fedorov

2010.04.30 01:35 "Re: [Tiff] "flexible" mode in TIFFClientOpen ?", by Dmitry Fedorov

It is much more than just adding a flag, but involves changing a large number of consistency checks in fairly arbitrary ways. While the "missing palette" issue above is resolved for your image by assuming grey scale, can you defend it as a general heuristic? What other specific checks do your files fail?

I haven't probably expressed myself correctly. The idea was to user-pass the "flexible" mode, that would enable some of these less stringent checks. Thus by default it would work exactly the same way and fail in the aforementioned case.

There two (as of now) cases when libtiff wouldn't return me a handle from TIFFClientOpen, the palette and TIFFReadDirEntryPersampleShort fails in: if (direntry->tdir_count != (uint64)tif->tif_dir.td_samplesperpixel) and is fixed by:

if (direntry->tdir_count < (uint64)tif->tif_dir.td_samplesperpixel)

I have many patches that I can apply after getting a tiff handle from TIFFClientOpen, but if I get nothing I'm dead in the water.

Wouldn't it be easy just to maintain your own modified libtiff for your own circumstances?

I've submitted the following tickets to bugzilla because, for obvious reasons, 1) updates may required manual patching some times, 2) I feel these patches may be useful for others, 3) they are not obviously breaking the library.

Cheers,
Dmitry

--
__________________________________

Dmitry Fedorov Levit
  <dima@dimin.net> <http://www.dimin.net/>
Skype: dima_fedorov
Google: fedorov
__________________________________

Center for Bio-Image Informatics:
  <http://www.bioimage.ucsb.edu/>

Vision Research Lab, Electrical and Computer Engineering
Image Registration:
  <http://vision.ece.ucsb.edu/>
  <http://vision.ece.ucsb.edu/registration/demo/>
  <http://regima.dpi.inpe.br/>

University of California, Santa Barbara
_________________________________

DIMIN Viewer n5:
  <http://www.dimin.net/software/viewer/>
__________________________________