delete service objects
This commit is contained in:
parent
273f5bfe13
commit
3a72217fe3
@ -96,7 +96,8 @@ void DataSource::setupData()
|
|||||||
m_dataEngine->disconnectSource(source, this);
|
m_dataEngine->disconnectSource(source, this);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//FIXME: delete all?
|
|
||||||
|
qDeleteAll(m_services);
|
||||||
m_services.clear();
|
m_services.clear();
|
||||||
|
|
||||||
m_dataEngine = dataEngine(m_engine);
|
m_dataEngine = dataEngine(m_engine);
|
||||||
@ -157,12 +158,17 @@ void DataSource::removeSource(const QString &source)
|
|||||||
emit sourceDisconnected(source);
|
emit sourceDisconnected(source);
|
||||||
emit connectedSourcesChanged();
|
emit connectedSourcesChanged();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (m_dataEngine) {
|
if (m_dataEngine) {
|
||||||
m_connectedSources.removeAll(source);
|
m_connectedSources.removeAll(source);
|
||||||
m_newSources.removeAll(source);
|
m_newSources.removeAll(source);
|
||||||
m_oldSources.removeAll(source);
|
m_oldSources.removeAll(source);
|
||||||
//TODO: delete it?
|
|
||||||
m_services.remove(source);
|
QHash<QString, Plasma::Service *>::iterator it = m_services.find(source);
|
||||||
|
if (it != m_services.end()) {
|
||||||
|
delete it.value();
|
||||||
|
m_services.erase(it);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user