QmlJSInspector: Fix disconnect() warnings on users app shutdown

Don't try to disconnect from the proxy if you haven't been connected
before, e.g. because the QmlJSObserverService is missing.

Reviewed-by: Christiaan Janssen
This commit is contained in:
Kai Koehne
2010-10-06 16:32:47 +02:00
parent a60960cfbc
commit 8049a0276d
3 changed files with 8 additions and 1 deletions

View File

@@ -261,6 +261,11 @@ void InspectorUi::debugQueryUpdated(QDeclarativeDebugQuery::State newState)
disconnect(m_debugQuery,SIGNAL(stateChanged(QDeclarativeDebugQuery::State)),this,SLOT(debugQueryUpdated(QDeclarativeDebugQuery::State)));
}
bool InspectorUi::isConnected() const
{
return m_clientProxy;
}
void InspectorUi::connected(ClientProxy *clientProxy)
{
m_clientProxy = clientProxy;

View File

@@ -103,6 +103,7 @@ public:
bool isShadowBuildProject() const;
void setupUi();
bool isConnected() const;
void connected(ClientProxy *clientProxy);
void disconnected();
void setDebuggerEngine(Debugger::QmlEngine *qmlEngine);

View File

@@ -140,7 +140,8 @@ void InspectorPlugin::objectAdded(QObject *object)
void InspectorPlugin::aboutToRemoveObject(QObject *obj)
{
if (m_clientProxy && m_clientProxy->qmlAdapter() == obj) {
m_inspectorUi->disconnected();
if (m_inspectorUi->isConnected())
m_inspectorUi->disconnected();
delete m_clientProxy;
m_clientProxy = 0;
}