|
|
|
@ -338,7 +338,8 @@ void printIFD(Exiv2::BasicIo& io, std::ostream& out, Exiv2::PrintStructureOption
|
|
|
|
|
}
|
|
|
|
|
else if ( isRationalType(type) )
|
|
|
|
|
{
|
|
|
|
|
for ( size_t k = 0 ; k < kount ; k++ ) {
|
|
|
|
|
for ( size_t k = 0 ; k < kount ; k++ )
|
|
|
|
|
{
|
|
|
|
|
uint32_t a = conditional_byte_swap_4_array<32>(&buf, k*size+0, bSwap);
|
|
|
|
|
uint32_t b = conditional_byte_swap_4_array<32>(&buf, k*size+4, bSwap);
|
|
|
|
|
out << sp << a << "/" << b;
|
|
|
|
@ -382,7 +383,8 @@ void printIFD(Exiv2::BasicIo& io, std::ostream& out, Exiv2::PrintStructureOption
|
|
|
|
|
io.seek(offset, Exiv2::BasicIo::beg); // position
|
|
|
|
|
io.read(bytes,jump ) ; // read
|
|
|
|
|
bytes[jump]=0 ;
|
|
|
|
|
if ( ::strcmp("Nikon",chars) == 0 ) {
|
|
|
|
|
if ( ::strcmp("Nikon",chars) == 0 )
|
|
|
|
|
{
|
|
|
|
|
// tag is an embedded tiff
|
|
|
|
|
Exiv2::byte* bytes=new Exiv2::byte[count-jump] ; // allocate memory
|
|
|
|
|
io.read(bytes,count-jump) ; // read
|
|
|
|
@ -390,7 +392,9 @@ void printIFD(Exiv2::BasicIo& io, std::ostream& out, Exiv2::PrintStructureOption
|
|
|
|
|
std::cerr << "Nikon makernote" << std::endl;
|
|
|
|
|
// printTiffStructure(memIo,out,option,depth); TODO: fix it
|
|
|
|
|
delete[] bytes ; // free
|
|
|
|
|
} else {
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
// tag is an IFD
|
|
|
|
|
io.seek(0, Exiv2::BasicIo::beg); // position
|
|
|
|
|
std::cerr << "makernote" << std::endl;
|
|
|
|
|