Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
Fixes #52375. Removes duplicate encoding aliases returned by QgsVecto…
…rDataProvider::availableEncodings()
  • Loading branch information
TurboGraphxBeige authored and nyalldawson committed Apr 24, 2023
1 parent 8f94e5d commit 922432c
Showing 1 changed file with 8 additions and 1 deletion.
9 changes: 8 additions & 1 deletion src/core/vector/qgsvectordataprovider.cpp
Expand Up @@ -660,6 +660,11 @@ static bool _compareEncodings( const QString &s1, const QString &s2 )
return s1.toLower() < s2.toLower();
}

static bool _removeDuplicateEncodings( const QString &s1, const QString &s2 )
{
return ( s1.toLower() == s2.toLower() );
}

QStringList QgsVectorDataProvider::availableEncodings()
{
static std::once_flag initialized;
Expand Down Expand Up @@ -718,8 +723,10 @@ QStringList QgsVectorDataProvider::availableEncodings()
smEncodings << "System";
#endif

// Do case-insensitive sorting of encodings
// Do case-insensitive sorting of encodings then remove duplicates
std::sort( sEncodings.begin(), sEncodings.end(), _compareEncodings );
const auto last = std::unique( sEncodings.begin(), sEncodings.end(), _removeDuplicateEncodings );
sEncodings.erase( last, sEncodings.end() );

} );

Expand Down

0 comments on commit 922432c

Please sign in to comment.