Skip to content

Commit 3a31f54

Browse files
committedJul 7, 2017
Don't use broken qHash< QList<...> > on Qt < 5.6
Results in infinite recursion
1 parent e8177b7 commit 3a31f54

File tree

1 file changed

+21
-0
lines changed

1 file changed

+21
-0
lines changed
 

‎src/core/qgis.cpp

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -247,9 +247,30 @@ uint qHash( const QVariant &variant )
247247
case QVariant::Char:
248248
return qHash( variant.toChar() );
249249
case QVariant::List:
250+
251+
#if QT_VERSION >= 0x050600
250252
return qHash( variant.toList() );
253+
#else
254+
{
255+
QVariantList list = variant.toList();
256+
if ( list.isEmpty() )
257+
return -1;
258+
else
259+
return qHash( list.at( 0 ) );
260+
}
261+
#endif
251262
case QVariant::StringList:
263+
#if QT_VERSION >= 0x050600
252264
return qHash( variant.toStringList() );
265+
#else
266+
{
267+
QStringList list = variant.toStringList();
268+
if ( list.isEmpty() )
269+
return -1;
270+
else
271+
return qHash( list.at( 0 ) );
272+
}
273+
#endif
253274
case QVariant::ByteArray:
254275
return qHash( variant.toByteArray() );
255276
case QVariant::Date:

0 commit comments

Comments
 (0)
Please sign in to comment.