NS_AUTOLOCK(mLock);
InMemoryDataSource::GetSources(nsIRDFResource* aProperty,                               nsIRDFNode* aTarget,                               PRBool aTruthValue,                               nsISimpleEnumerator** aResult){    NS_PRECONDITION(aProperty != nsnull, "null ptr");    if (! aProperty)        return NS_ERROR_NULL_POINTER;    NS_PRECONDITION(aTarget != nsnull, "null ptr");    if (! aTarget)        return NS_ERROR_NULL_POINTER;    NS_PRECONDITION(aResult != nsnull, "null ptr");    if (! aResult)        return NS_ERROR_NULL_POINTER;    NS_AUTOLOCK(mLock);    InMemoryAssertionEnumeratorImpl* result =        InMemoryAssertionEnumeratorImpl::Create(this, nsnull, aProperty,                                                  aTarget, aTruthValue);    if (! result)        return NS_ERROR_OUT_OF_MEMORY;    NS_ADDREF(result);    *aResult = result;    return NS_OK;}