using QDataStream::Qt_5_6

This commit is contained in:
Uwe Rathmann 2021-09-14 13:25:11 +02:00
parent 4092ec0a8a
commit 4a63f2cf68
1 changed files with 14 additions and 0 deletions

View File

@ -16,6 +16,14 @@
static const char qskMagicNumber[] = "QSKG"; static const char qskMagicNumber[] = "QSKG";
/*
To avoid crashes ( fonts ), when svg2qvg was running with a different Qt
version, than the one of the application we hardcode
the datastream format to Qt 5.6. Once everything is running with
Qt 5.15 we can increase the version. TODO ...
*/
static const int qskDataStreamVersion = QDataStream::Qt_5_6;
static inline void qskWritePathData( static inline void qskWritePathData(
const QPainterPath& path, QDataStream& s ) const QPainterPath& path, QDataStream& s )
{ {
@ -221,6 +229,9 @@ QskGraphic QskGraphicIO::read( QIODevice* dev )
return QskGraphic(); return QskGraphic();
QDataStream stream( dev ); QDataStream stream( dev );
#if 1
stream.setVersion( qskDataStreamVersion );
#endif
stream.setByteOrder( QDataStream::BigEndian ); stream.setByteOrder( QDataStream::BigEndian );
char magicNumber[ 4 ]; char magicNumber[ 4 ];
@ -299,6 +310,9 @@ bool QskGraphicIO::write( const QskGraphic& graphic, QIODevice* dev )
return false; return false;
QDataStream stream( dev ); QDataStream stream( dev );
#if 1
stream.setVersion( qskDataStreamVersion );
#endif
stream.setByteOrder( QDataStream::BigEndian ); stream.setByteOrder( QDataStream::BigEndian );
stream.writeRawData( qskMagicNumber, 4 ); stream.writeRawData( qskMagicNumber, 4 );