NS_AUTOLOCK(mDataSource->mLock);
InMemoryDataSource::HasArcOut(nsIRDFResource *aSource, nsIRDFResource *aArc, PRBool *result){    NS_AUTOLOCK(mDataSource->mLock);    Assertion* ass = GetForwardArcs(aSource);    if (ass && ass->mHashEntry) {        PLDHashEntryHdr* hdr = PL_DHashTableOperate(ass->u.hash.mPropertyHash,            aArc, PL_DHASH_LOOKUP);        Assertion* val = PL_DHASH_ENTRY_IS_BUSY(hdr)            ? NS_REINTERPRET_CAST(Entry*, hdr)->mAssertions            : nsnull;        if (val) {            *result = PR_TRUE;            return NS_OK;        }        ass = ass->mNext;    }    while (ass) {        nsIRDFResource* elbow = ass->u.as.mProperty;        if (elbow == aArc) {            *result = PR_TRUE;            return NS_OK;        }        ass = ass->mNext;    }    *result = PR_FALSE;    return NS_OK;}