forked from qt-creator/qt-creator
Symbian: ensure that terminated application is killed
This commit is contained in:
@@ -1023,7 +1023,7 @@ void CodaGdbAdapter::startAdapter()
|
|||||||
setupTrkDeviceSignals();
|
setupTrkDeviceSignals();
|
||||||
codaSocket = QSharedPointer<QTcpSocket>(new QTcpSocket);
|
codaSocket = QSharedPointer<QTcpSocket>(new QTcpSocket);
|
||||||
m_codaDevice->setDevice(codaSocket);
|
m_codaDevice->setDevice(codaSocket);
|
||||||
m_trkIODevice = codaSocket;
|
m_codaSocketIODevice = codaSocket;
|
||||||
} else {
|
} else {
|
||||||
m_codaDevice = SymbianUtils::SymbianDeviceManager::instance()->getTcfPort(parameters.remoteChannel);
|
m_codaDevice = SymbianUtils::SymbianDeviceManager::instance()->getTcfPort(parameters.remoteChannel);
|
||||||
bool ok = m_codaDevice && m_codaDevice->device()->isOpen();
|
bool ok = m_codaDevice && m_codaDevice->device()->isOpen();
|
||||||
@@ -1190,21 +1190,22 @@ void CodaGdbAdapter::cleanup()
|
|||||||
{
|
{
|
||||||
delete m_gdbServer;
|
delete m_gdbServer;
|
||||||
m_gdbServer = 0;
|
m_gdbServer = 0;
|
||||||
if (!m_trkIODevice.isNull()) {
|
if (!m_codaSocketIODevice.isNull()) {
|
||||||
QAbstractSocket *socket = qobject_cast<QAbstractSocket *>(m_trkIODevice.data());
|
QAbstractSocket *socket = qobject_cast<QAbstractSocket *>(m_codaSocketIODevice.data());
|
||||||
const bool isOpen = socket
|
const bool isOpen = socket
|
||||||
? socket->state() == QAbstractSocket::ConnectedState
|
? socket->state() == QAbstractSocket::ConnectedState
|
||||||
: m_trkIODevice->isOpen();
|
: m_codaSocketIODevice->isOpen();
|
||||||
if (isOpen) {
|
if (isOpen) {
|
||||||
sendRunControlTerminateCommand(); //ensure process is stopped after being suspended
|
sendRunControlTerminateCommand(); //ensure process is stopped after being suspended
|
||||||
if (socket) {
|
if (socket) {
|
||||||
socket->disconnect();
|
socket->disconnect();
|
||||||
} else {
|
} else {
|
||||||
m_trkIODevice->close();
|
m_codaSocketIODevice->close();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} //!m_trkIODevice.isNull()
|
} //!m_trkIODevice.isNull()
|
||||||
if (m_codaDevice) {
|
if (m_codaDevice) {
|
||||||
|
sendRunControlTerminateCommand(); //ensure process is stopped after being suspended
|
||||||
disconnect(m_codaDevice.data(), 0, this, 0);
|
disconnect(m_codaDevice.data(), 0, this, 0);
|
||||||
SymbianUtils::SymbianDeviceManager::instance()->releaseTcfPort(m_codaDevice);
|
SymbianUtils::SymbianDeviceManager::instance()->releaseTcfPort(m_codaDevice);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -147,7 +147,7 @@ private:
|
|||||||
int m_stopReason;
|
int m_stopReason;
|
||||||
|
|
||||||
QSharedPointer<Coda::CodaDevice> m_codaDevice;
|
QSharedPointer<Coda::CodaDevice> m_codaDevice;
|
||||||
QSharedPointer<QIODevice> m_trkIODevice;
|
QSharedPointer<QIODevice> m_codaSocketIODevice;
|
||||||
|
|
||||||
//
|
//
|
||||||
// Gdb
|
// Gdb
|
||||||
|
|||||||
Reference in New Issue
Block a user