From 4a63f2cf68487d493fb0fd6f30e2335f59f3675b Mon Sep 17 00:00:00 2001 From: Uwe Rathmann Date: Tue, 14 Sep 2021 13:25:11 +0200 Subject: [PATCH] using QDataStream::Qt_5_6 --- src/graphic/QskGraphicIO.cpp | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/graphic/QskGraphicIO.cpp b/src/graphic/QskGraphicIO.cpp index 06f9d2f9..f67d1b4a 100644 --- a/src/graphic/QskGraphicIO.cpp +++ b/src/graphic/QskGraphicIO.cpp @@ -16,6 +16,14 @@ 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( const QPainterPath& path, QDataStream& s ) { @@ -221,6 +229,9 @@ QskGraphic QskGraphicIO::read( QIODevice* dev ) return QskGraphic(); QDataStream stream( dev ); +#if 1 + stream.setVersion( qskDataStreamVersion ); +#endif stream.setByteOrder( QDataStream::BigEndian ); char magicNumber[ 4 ]; @@ -299,6 +310,9 @@ bool QskGraphicIO::write( const QskGraphic& graphic, QIODevice* dev ) return false; QDataStream stream( dev ); +#if 1 + stream.setVersion( qskDataStreamVersion ); +#endif stream.setByteOrder( QDataStream::BigEndian ); stream.writeRawData( qskMagicNumber, 4 );