Skip to content

Commit

Permalink
Fixes #52375. Removes duplicate encoding aliases returned by QgsVecto…
Browse files Browse the repository at this point in the history
…rDataProvider::availableEncodings()
  • Loading branch information
TurboGraphxBeige authored and nyalldawson committed Apr 24, 2023
1 parent 00cf289 commit ed7975f
Showing 1 changed file with 8 additions and 1 deletion.
9 changes: 8 additions & 1 deletion src/core/vector/qgsvectordataprovider.cpp
Expand Up @@ -748,6 +748,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 @@ -806,8 +811,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 ed7975f

Please sign in to comment.