never report a success if there was none: check the exit code + status

svn path=/trunk/KDE/kdebase/apps/; revision=1047233
This commit is contained in:
Peter Penz 2009-11-10 18:36:13 +00:00
parent 7b42d2d6cb
commit a47dc8edae
2 changed files with 8 additions and 5 deletions

View file

@ -309,9 +309,11 @@ void FileViewSvnPlugin::removeFiles()
i18nc("@info:status", "Removed files from SVN repository."));
}
void FileViewSvnPlugin::slotOperationCompleted()
void FileViewSvnPlugin::slotOperationCompleted(int exitCode, QProcess::ExitStatus exitStatus)
{
if (m_contextItems.isEmpty()) {
if ((exitStatus != QProcess::NormalExit) || (exitCode != 0)) {
emit errorMessage(m_errorMsg);
} else if (m_contextItems.isEmpty()) {
emit operationCompletedMessage(m_operationCompletedMsg);
emit versionStatesChanged();
} else {
@ -344,8 +346,8 @@ void FileViewSvnPlugin::execSvnCommand(const QString& svnCommand,
void FileViewSvnPlugin::startSvnCommandProcess()
{
QProcess* process = new QProcess(this);
connect(process, SIGNAL(finished(int)),
this, SLOT(slotOperationCompleted()));
connect(process, SIGNAL(finished(int, QProcess::ExitStatus)),
this, SLOT(slotOperationCompleted(int, QProcess::ExitStatus)));
connect(process, SIGNAL(error(QProcess::ProcessError)),
this, SLOT(slotOperationError()));

View file

@ -23,6 +23,7 @@
#include <kfileitem.h>
#include <kversioncontrolplugin.h>
#include <QHash>
#include <QProcess>
#include <QTemporaryFile>
// TODO: This class will be moved to kdevplatform as soon as kdevplatform will
@ -49,7 +50,7 @@ private slots:
void addFiles();
void removeFiles();
void slotOperationCompleted();
void slotOperationCompleted(int exitCode, QProcess::ExitStatus exitStatus);
void slotOperationError();
private: