Bug 474369 - get rid of nsVoidArray, rdf part; r+sr=bsmedberg

This commit is contained in:
Arpad Borsos
2009-04-22 10:43:15 +02:00
parent 575ba44eca
commit 4341bb06d9
6 changed files with 37 additions and 131 deletions

View File

@@ -71,7 +71,7 @@
#include "nsIRDFObserver.h"
#include "nsIRDFRemoteDataSource.h"
#include "nsFixedSizeAllocator.h"
#include "nsVoidArray.h"
#include "nsTArray.h"
#include "nsCOMArray.h"
#include "nsArrayEnumerator.h"
#include "nsXPIDLString.h"
@@ -175,7 +175,7 @@ protected:
nsISimpleEnumerator* mCurrent;
nsIRDFNode* mResult;
PRInt32 mNext;
nsAutoVoidArray mAlreadyReturned;
nsAutoTArray<nsCOMPtr<nsIRDFNode>, 8> mAlreadyReturned;
PRPackedBool mAllowNegativeAssertions;
PRPackedBool mCoalesceDuplicateArcs;
};
@@ -197,15 +197,6 @@ CompositeEnumeratorImpl::CompositeEnumeratorImpl(CompositeDataSourceImpl* aCompo
CompositeEnumeratorImpl::~CompositeEnumeratorImpl(void)
{
if (mCoalesceDuplicateArcs == PR_TRUE)
{
for (PRInt32 i = mAlreadyReturned.Count() - 1; i >= 0; --i)
{
nsIRDFNode *node = (nsIRDFNode *) mAlreadyReturned[i];
NS_RELEASE(node);
}
}
NS_IF_RELEASE(mCurrent);
NS_IF_RELEASE(mResult);
NS_RELEASE(mCompositeDataSource);
@@ -304,7 +295,7 @@ CompositeEnumeratorImpl::HasMoreElements(PRBool* aResult)
// Now see if we've returned it once already.
// XXX N.B. performance here...may want to hash if things get large?
PRBool alreadyReturned = PR_FALSE;
for (i = mAlreadyReturned.Count() - 1; i >= 0; --i)
for (i = mAlreadyReturned.Length() - 1; i >= 0; --i)
{
if (mAlreadyReturned[i] == mResult)
{
@@ -332,7 +323,6 @@ CompositeEnumeratorImpl::HasMoreElements(PRBool* aResult)
if (mCoalesceDuplicateArcs == PR_TRUE)
{
mAlreadyReturned.AppendElement(mResult);
NS_ADDREF(mResult);
}
return NS_OK;