Try to fix QString encoding issues in KAuth helper.
For now set text codec to UTF-8 Needs more investigation if locale of the GUI program is not UTF-8.
This commit is contained in:
parent
71b56d27a8
commit
24e1e83152
|
@ -141,8 +141,7 @@ bool ExternalCommand::start(int timeout)
|
||||||
CoreBackendManager::self()->privateKey().signMessage(hash, QCA::EMSA3_Raw),
|
CoreBackendManager::self()->privateKey().signMessage(hash, QCA::EMSA3_Raw),
|
||||||
cmd,
|
cmd,
|
||||||
args(),
|
args(),
|
||||||
d->m_Input,
|
d->m_Input);
|
||||||
QStringList());
|
|
||||||
|
|
||||||
QDBusPendingCallWatcher *watcher = new QDBusPendingCallWatcher(pcall, this);
|
QDBusPendingCallWatcher *watcher = new QDBusPendingCallWatcher(pcall, this);
|
||||||
|
|
||||||
|
|
|
@ -26,9 +26,6 @@
|
||||||
|
|
||||||
#include <KLocalizedString>
|
#include <KLocalizedString>
|
||||||
|
|
||||||
// exit helper if no ping for 42s
|
|
||||||
#define TIMEOUT 42000
|
|
||||||
|
|
||||||
/** Initialize ExternalCommandHelper Daemon and prepare DBus interface
|
/** Initialize ExternalCommandHelper Daemon and prepare DBus interface
|
||||||
*/
|
*/
|
||||||
ActionReply ExternalCommandHelper::init(const QVariantMap& args)
|
ActionReply ExternalCommandHelper::init(const QVariantMap& args)
|
||||||
|
@ -198,8 +195,9 @@ bool ExternalCommandHelper::copyblocks(const QString& Uuid, const QString& sourc
|
||||||
return rval;
|
return rval;
|
||||||
}
|
}
|
||||||
|
|
||||||
QVariantMap ExternalCommandHelper::start(const QByteArray& signature, const QString& command, const QStringList& arguments, const QByteArray& input, const QStringList& environment)
|
QVariantMap ExternalCommandHelper::start(const QByteArray& signature, const QString& command, const QStringList& arguments, const QByteArray& input)
|
||||||
{
|
{
|
||||||
|
QTextCodec::setCodecForLocale(QTextCodec::codecForName("UTF-8"));
|
||||||
QVariantMap reply;
|
QVariantMap reply;
|
||||||
|
|
||||||
QByteArray request;
|
QByteArray request;
|
||||||
|
@ -217,7 +215,7 @@ QVariantMap ExternalCommandHelper::start(const QByteArray& signature, const QStr
|
||||||
|
|
||||||
// connect(&cmd, &QProcess::readyReadStandardOutput, this, &ExternalCommandHelper::onReadOutput);
|
// connect(&cmd, &QProcess::readyReadStandardOutput, this, &ExternalCommandHelper::onReadOutput);
|
||||||
|
|
||||||
m_cmd.setEnvironment(environment);
|
m_cmd.setEnvironment( { QStringLiteral("LVM_SUPPRESS_FD_WARNINGS=1") } );
|
||||||
m_cmd.start(command, arguments);
|
m_cmd.start(command, arguments);
|
||||||
m_cmd.write(input);
|
m_cmd.write(input);
|
||||||
m_cmd.closeWriteChannel();
|
m_cmd.closeWriteChannel();
|
||||||
|
|
|
@ -43,7 +43,7 @@ public:
|
||||||
|
|
||||||
public Q_SLOTS:
|
public Q_SLOTS:
|
||||||
ActionReply init(const QVariantMap& args);
|
ActionReply init(const QVariantMap& args);
|
||||||
Q_SCRIPTABLE QVariantMap start(const QByteArray& signature, const QString& command, const QStringList& arguments, const QByteArray& input, const QStringList& environment);
|
Q_SCRIPTABLE QVariantMap start(const QByteArray& signature, const QString& command, const QStringList& arguments, const QByteArray& input);
|
||||||
Q_SCRIPTABLE bool copyblocks(const QString& Uuid, const QString& sourceDevice, const qint64 sourceFirstByte, const qint64 sourceLength, const QString& targetDevice, const qint64 targetFirstByte, const qint64 blockSize);
|
Q_SCRIPTABLE bool copyblocks(const QString& Uuid, const QString& sourceDevice, const qint64 sourceFirstByte, const qint64 sourceLength, const QString& targetDevice, const qint64 targetFirstByte, const qint64 blockSize);
|
||||||
Q_SCRIPTABLE void exit(const QString& Uuid);
|
Q_SCRIPTABLE void exit(const QString& Uuid);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue