File tree Expand file tree Collapse file tree 1 file changed +11
-1
lines changed Expand file tree Collapse file tree 1 file changed +11
-1
lines changed Original file line number Diff line number Diff line change 23
23
#include " qgsfeature.h"
24
24
#include " qgsfield.h"
25
25
#include " qgslogger.h"
26
+ #include " qgsmessagelog.h"
26
27
27
28
QgsVectorDataProvider::QgsVectorDataProvider ( QString uri )
28
29
: QgsDataProvider( uri )
@@ -157,7 +158,9 @@ void QgsVectorDataProvider::setEncoding( const QString& e )
157
158
}
158
159
else
159
160
{
160
- QgsDebugMsg ( " error finding QTextCodec for " + e );
161
+ QgsMessageLog::logMessage ( tr ( " Codec %1 not found. Falling back to system locale" ).arg ( e ) );
162
+ mEncoding = QTextCodec::codecForName ( " System" );
163
+ Q_ASSERT ( mEncoding );
161
164
}
162
165
}
163
166
@@ -457,6 +460,12 @@ const QStringList &QgsVectorDataProvider::availableEncodings()
457
460
{
458
461
if ( smEncodings.isEmpty () )
459
462
{
463
+ foreach ( QString codec, QTextCodec::availableCodecs () )
464
+ {
465
+ smEncodings << codec;
466
+ }
467
+ qSort ( smEncodings );
468
+ #if 0
460
469
smEncodings << "BIG5";
461
470
smEncodings << "BIG5-HKSCS";
462
471
smEncodings << "EUCJP";
@@ -502,6 +511,7 @@ const QStringList &QgsVectorDataProvider::availableEncodings()
502
511
smEncodings << "Apple Roman";
503
512
smEncodings << "TIS-620";
504
513
smEncodings << "System";
514
+ #endif
505
515
}
506
516
507
517
return smEncodings;
You can’t perform that action at this time.
0 commit comments