Skip to content

Commit 652deba

Browse files
committed
Fix for #6309, add case-insensitive sort for vector provider encodings
1 parent 24d50e4 commit 652deba

File tree

1 file changed

+8
-1
lines changed

1 file changed

+8
-1
lines changed

src/core/qgsvectordataprovider.cpp

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -460,6 +460,11 @@ QVariant QgsVectorDataProvider::convertValue( QVariant::Type type, QString value
460460
return v;
461461
}
462462

463+
static bool _compareEncodings( const QString& s1, const QString& s2 )
464+
{
465+
return s1.toLower() < s2.toLower();
466+
}
467+
463468
const QStringList &QgsVectorDataProvider::availableEncodings()
464469
{
465470
if ( smEncodings.isEmpty() )
@@ -468,7 +473,6 @@ const QStringList &QgsVectorDataProvider::availableEncodings()
468473
{
469474
smEncodings << codec;
470475
}
471-
qSort( smEncodings );
472476
#if 0
473477
smEncodings << "BIG5";
474478
smEncodings << "BIG5-HKSCS";
@@ -518,6 +522,9 @@ const QStringList &QgsVectorDataProvider::availableEncodings()
518522
#endif
519523
}
520524

525+
// Do case-insensitive sorting of encodings
526+
qSort( smEncodings.begin(), smEncodings.end(), _compareEncodings );
527+
521528
return smEncodings;
522529
}
523530

0 commit comments

Comments
 (0)