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),
|
||||
cmd,
|
||||
args(),
|
||||
d->m_Input,
|
||||
QStringList());
|
||||
d->m_Input);
|
||||
|
||||
QDBusPendingCallWatcher *watcher = new QDBusPendingCallWatcher(pcall, this);
|
||||
|
||||
|
|
|
@ -26,9 +26,6 @@
|
|||
|
||||
#include <KLocalizedString>
|
||||
|
||||
// exit helper if no ping for 42s
|
||||
#define TIMEOUT 42000
|
||||
|
||||
/** Initialize ExternalCommandHelper Daemon and prepare DBus interface
|
||||
*/
|
||||
ActionReply ExternalCommandHelper::init(const QVariantMap& args)
|
||||
|
@ -198,8 +195,9 @@ bool ExternalCommandHelper::copyblocks(const QString& Uuid, const QString& sourc
|
|||
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;
|
||||
|
||||
QByteArray request;
|
||||
|
@ -217,7 +215,7 @@ QVariantMap ExternalCommandHelper::start(const QByteArray& signature, const QStr
|
|||
|
||||
// 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.write(input);
|
||||
m_cmd.closeWriteChannel();
|
||||
|
|
|
@ -43,7 +43,7 @@ public:
|
|||
|
||||
public Q_SLOTS:
|
||||
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 void exit(const QString& Uuid);
|
||||
|
||||
|
|
Loading…
Reference in New Issue