- virtual Observer* removeObserver(Observer* oldObserver) {
- for (std::vector<Observer*>::iterator i=m_observers.begin(); i!=m_observers.end(); i++) {
+ virtual const Observer* removeObserver(const Observer* oldObserver) const {
+ xmltooling::Lock lock(m_observerLock);
+ for (std::vector<const Observer*>::iterator i=m_observers.begin(); i!=m_observers.end(); i++) {