[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: branches/KDE/4.1/kdelibs/solid/solid/backends/hal [POSSIBLY UNSAFE]
From: Nickolai Shaforostoff <shafff () ukr ! net>
Date: 2008-09-07 13:47:33
Message-ID: 1220795253.787689.28095.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 858160 by shaforo:
back-port of 858156: use locale-dependant code page for vfat volumes
M +33 -0 halstorageaccess.cpp [POSSIBLY UNSAFE: system]
--- branches/KDE/4.1/kdelibs/solid/solid/backends/hal/halstorageaccess.cpp #858159:858160
@@ -19,6 +19,7 @@
#include "halstorageaccess.h"
+#include <QtCore/QLocale>
#include <QtCore/QDebug>
#include <QtDBus/QDBusConnection>
#include <QtDBus/QDBusInterface>
@@ -233,6 +234,38 @@
if (halOptions.contains("uid=")) {
options << "uid="+QString::number(::getuid());
}
+ //respect windows-enforced charsets for fat
+ if ( m_device->property("volume.fstype").toString()=="vfat" && halOptions.contains("codepage=") ) {
+ options << "iocharset=utf8";
+ switch (QLocale::system().language()) {
+ case QLocale::Russian:
+ case QLocale::Ukrainian:
+ options << "codepage=1251";
+ break;
+ case QLocale::Hebrew:
+ options << "codepage=1255";
+ break;
+ case QLocale::Turkish:
+ options << "codepage=1254";
+ case QLocale::Greek:
+ options << "codepage=1253";
+ case QLocale::Arabic:
+ options << "codepage=1256";
+ case QLocale::German:
+ case QLocale::Italian:
+ case QLocale::Spanish:
+ case QLocale::Portuguese:
+ case QLocale::French:
+ case QLocale::Dutch:
+ case QLocale::Danish:
+ case QLocale::Swedish:
+ case QLocale::Norwegian:
+ case QLocale::Icelandic:
+ options << "codepage=1255";
+ default:
+ options.removeLast();
+ }
+ }
msg << "" << "" << options;
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic