diff --git a/krArc/krarc.h b/krArc/krarc.h --- a/krArc/krarc.h +++ b/krArc/krarc.h @@ -58,7 +58,7 @@ public slots: void receivedData(KProcess *, QByteArray &); - void checkOutputForPassword(KProcess *, QByteArray &); + void check7zOutputForPassword(KProcess *, QByteArray &); protected: virtual bool initDirDict(const QUrl &url, bool forced = false); diff --git a/krArc/krarc.cpp b/krArc/krarc.cpp --- a/krArc/krarc.cpp +++ b/krArc/krarc.cpp @@ -1737,12 +1737,11 @@ } } - QString testCmd = tester + " t -y "; lastData = encryptedArchPath = ""; KrLinecountingProcess proc; - proc << testCmd << fileName; - connect(&proc, &KrLinecountingProcess::newOutputData, this, &kio_krarcProtocol::checkOutputForPassword); + proc << tester << "-y" << "t" << fileName; + connect(&proc, &KrLinecountingProcess::newOutputData, this, &kio_krarcProtocol::check7zOutputForPassword); proc.start(); proc.waitForFinished(); encrypted = this->encrypted; @@ -1752,7 +1751,7 @@ } } -void kio_krarcProtocol::checkOutputForPassword(KProcess * proc, QByteArray & buf) +void kio_krarcProtocol::check7zOutputForPassword(KProcess * proc, QByteArray & buf) { KRFUNC; QString data = QString(buf);