[Interest] QBuffer::seek warnings in QtConcurrent
Giuseppe D'Angelo
giuseppe.dangelo at kdab.com
Tue Jan 27 22:18:16 CET 2015
Il 27/01/2015 20:27, Igor Mironchik ha scritto:
> I've looked at qjpeghandler.cpp and it is strangely that practically all
> of my photos produced by my Android camera is corrupted. Do you know any
> software that can give me information about exif in jpeg that I can be
> sure that jpeg is corrupted? Thank you.
Possibly exiftool or some any other image manipulation program.
But also I wonder about the code around your backtrace:
> 0 qt_message_fatal qlogging.cpp 1407 0x57ed3f21
> 1 QMessageLogger::warning qlogging.cpp 396 0x57ed28bb
> 2 QBuffer::seek qbuffer.cpp 374 0x5807b386
> 3 QDataStream::skipRawData qdatastream.cpp 1169 0x5807dfbc
> 4 getExifOrientation qjpeghandler.cpp 820 0x5ab66204
=>
> 795 quint32 offset;
> ...
> 811 stream >> offset;
> 812 // we have already used 8 bytes of TIFF header
> 813 offset -= 8;
> 814
> 815 // read IFD
> 816 while (!stream.atEnd()) {
> 817 quint16 numEntries;
> 818
> 819 // skip offset bytes to get the next IFD
> 820 if (stream.skipRawData(offset) != (qint32)offset)
> 821 return -1;
Note in particular that "stream" reads an unsigned 32 bit int into
offset, but then skipRawData silently converts to signed... (but it may
be totally unrelated with the problem here, which perhaps results from
bad EXIF parsing on Qt side)
HTH,
--
Giuseppe D'Angelo | giuseppe.dangelo at kdab.com | Software Engineer
KDAB (UK) Ltd., a KDAB Group company
Tel. UK +44-1738-450410, Sweden (HQ) +46-563-540090
KDAB - Qt Experts - Platform-independent software solutions
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 4048 bytes
Desc: Firma crittografica S/MIME
URL: <http://lists.qt-project.org/pipermail/interest/attachments/20150127/7949e220/attachment.bin>
More information about the Interest
mailing list