forked from qt-creator/qt-creator
ProjectExplorer: Introduce DeviceProcessSignalOperation.
Every device can now return a DeviceProcessSignalOperation, which allows to kill or interrupt processes running on the device. Change-Id: Idaa04ebc767e09ca167fa033ed93860b9b81479e Reviewed-by: Christian Kandeler <christian.kandeler@digia.com> Reviewed-by: David Kaspar <dkaspar@blackberry.com> Reviewed-by: hjk <hjk121@nokiamail.com>
This commit is contained in:
@@ -295,13 +295,11 @@ void SshDeviceProcess::SshDeviceProcessPrivate::doSignal(QSsh::SshRemoteProcess:
|
||||
if (serverSupportsSignals) {
|
||||
process->sendSignal(signal);
|
||||
} else {
|
||||
const DeviceProcessSupport::Ptr processSupport = q->device()->processSupport();
|
||||
QString signalCommandLine = signal == QSsh::SshRemoteProcess::IntSignal
|
||||
? processSupport->interruptProcessByNameCommandLine(executable)
|
||||
: processSupport->killProcessByNameCommandLine(executable);
|
||||
const QSsh::SshRemoteProcess::Ptr signalProcess
|
||||
= connection->createRemoteProcess(signalCommandLine.toUtf8());
|
||||
signalProcess->start();
|
||||
DeviceProcessSignalOperation::Ptr signalOperation = q->device()->signalOperation();
|
||||
if (signal == QSsh::SshRemoteProcess::IntSignal)
|
||||
signalOperation->interruptProcess(executable);
|
||||
else
|
||||
signalOperation->killProcess(executable);
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user