Part 2 of the fix for bug 413281 (Firefox leaks when Yahoo Toolbar is installed). r/sr=sicking.
This commit is contained in:
Родитель
93a25d86a0
Коммит
0c0b493701
|
@ -54,7 +54,18 @@ nsArray::~nsArray()
|
|||
{
|
||||
Clear();
|
||||
}
|
||||
|
||||
|
||||
NS_IMPL_CYCLE_COLLECTING_ADDREF(nsArray)
|
||||
NS_IMPL_CYCLE_COLLECTING_RELEASE(nsArray)
|
||||
|
||||
NS_IMPL_CYCLE_COLLECTION_CLASS(nsArray)
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(nsArray)
|
||||
tmp->Clear();
|
||||
NS_IMPL_CYCLE_COLLECTION_UNLINK_END
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(nsArray)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_NSCOMARRAY(mArray)
|
||||
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
|
||||
|
||||
NS_IMETHODIMP
|
||||
nsArray::GetLength(PRUint32* aLength)
|
||||
{
|
||||
|
|
|
@ -42,6 +42,7 @@
|
|||
#include "nsIMutableArray.h"
|
||||
#include "nsCOMArray.h"
|
||||
#include "nsCOMPtr.h"
|
||||
#include "nsCycleCollectionParticipant.h"
|
||||
|
||||
#define NS_ARRAY_CLASSNAME \
|
||||
"nsIArray implementation"
|
||||
|
@ -63,7 +64,8 @@ public:
|
|||
nsArray(const nsCOMArray_base& aBaseArray) : mArray(aBaseArray)
|
||||
{ }
|
||||
|
||||
NS_DECL_ISUPPORTS
|
||||
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
|
||||
NS_DECL_CYCLE_COLLECTION_CLASS(nsArray)
|
||||
NS_DECL_NSIARRAY
|
||||
NS_DECL_NSIMUTABLEARRAY
|
||||
|
||||
|
|
|
@ -34,7 +34,11 @@
|
|||
%pseudo-iid nsIByteBuffer e4a6e4b0-93b4-11d1-895b-006008911b81
|
||||
%pseudo-iid nsIUnicharBuffer 14cf6970-93b5-11d1-895b-006008911b81
|
||||
|
||||
NS_IMPL_ISUPPORTS2(nsArray, nsIArray, nsIMutableArray)
|
||||
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(nsArray)
|
||||
NS_INTERFACE_MAP_ENTRY(nsIArray)
|
||||
NS_INTERFACE_MAP_ENTRY(nsIMutableArray)
|
||||
NS_INTERFACE_MAP_ENTRY_AMBIGUOUS(nsISupports, nsIMutableArray)
|
||||
NS_INTERFACE_MAP_END
|
||||
|
||||
NS_IMPL_ISUPPORTS1(nsSimpleProperty, nsIProperty)
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче