2006.10.26 15:21 "[Tiff] TIFFReadPrivateDirectory function is not working for SUBIFD", by Anurag Singh
Hello All
I am trying to read subIFD with the help of TIFFReadPrivateDirectory(TIFF* tif, toff_t diroff), but finally got that it's not working.
this is the code snippet of the function
__TIFFReadCustomDirectoryPart(TIFF* tif, toff_t diroff, size_t* nfields, TIFFFieldInfo** info[], int attrPrivateDirectory ) {
fix = 0;
for (dp = dir, i = dircount; i > 0; i--, dp++) {
if (tif->tif_flags & TIFF_SWAB) {
TIFFSwabArrayOfShort(&dp->tdir_tag, 2);
TIFFSwabArrayOfLong(&dp->tdir_count, 2);
}
if (fix >= *nfields || dp->tdir_tag == IGNORE)
continue;
// none of the line executed below it
while (fix < *nfields && (*info)[fix]->field_tag < dp->tdir_tag)
fix++;
}
}
above nfields is tif->tif_nPrivateFields, which is always 0 at the time of SubIFD reading. So the loop never complete, it's always return from the same line.
Please let me know how to read SubIFD with the help of the above fucntions.
Thanks In Advance
Anurag