NS_AUTOLOCK(mLock);
InMemoryDataSource::RemoveObserver(nsIRDFObserver* aObserver){    NS_PRECONDITION(aObserver != nsnull, "null ptr");    if (! aObserver)        return NS_ERROR_NULL_POINTER;    NS_AUTOLOCK(mLock);    mObservers.RemoveObject(aObserver);    // note: use Count() instead of just decrementing    // in case aObserver wasn't in list, for example    mNumObservers = mObservers.Count();    return NS_OK;}