fix memcpy bytes size

v0.27.3
Michał Walenciak 8 years ago
parent b343064afc
commit 1429ae843a

@ -300,18 +300,18 @@ void printIFD(Exiv2::BasicIo& io, std::ostream& out, Exiv2::PrintStructureOption
: is8ByteType(type) ? 8
: 1;
Exiv2::DataBuf buf(size*count + pad); // allocate a buffer
Exiv2::DataBuf buf(size * count + pad);
// big data? Use 'data' as pointer to real data
if ( count*size > 8 ) // read into buffer
{
size_t restore = io.tell(); // save
io.seek(data, Exiv2::BasicIo::beg); // position
io.read(buf.pData_,count*size); // read
io.read(buf.pData_, count * size); // read
io.seek(restore, Exiv2::BasicIo::beg); // restore
}
else // use 'data' as data :)
std::memcpy(buf.pData_, &data, 8); // copy data
std::memcpy(buf.pData_, &data, count * size); // copy data
if ( bPrint )
{

Loading…
Cancel
Save