From 4cc70a8b0d21d5245cdf5aac8af13f1382a788e8 Mon Sep 17 00:00:00 2001 From: "rjc%netscape.com" Date: Fri, 23 Apr 1999 08:32:42 +0000 Subject: [PATCH] Checking in Scott Putterman's changes to use nsISupportsArray instead of a void array. git-svn-id: svn://10.0.0.236/trunk@28824 18797224-902f-48f8-a5cc-f745e15eee43 --- .../xul/templates/src/nsXULTemplateBuilder.cpp | 16 +++++++++++++--- mozilla/rdf/content/src/nsRDFGenericBuilder.cpp | 16 +++++++++++++--- mozilla/rdf/content/src/nsXULTemplateBuilder.cpp | 16 +++++++++++++--- 3 files changed, 39 insertions(+), 9 deletions(-) diff --git a/mozilla/content/xul/templates/src/nsXULTemplateBuilder.cpp b/mozilla/content/xul/templates/src/nsXULTemplateBuilder.cpp index 770014df9f8..f2e7e595a6b 100644 --- a/mozilla/content/xul/templates/src/nsXULTemplateBuilder.cpp +++ b/mozilla/content/xul/templates/src/nsXULTemplateBuilder.cpp @@ -484,8 +484,9 @@ RDFGenericBuilderImpl::CreateContents(nsIContent* aElement) return rv; // rjc - sort - nsVoidArray *tempArray; - if ((tempArray = new nsVoidArray()) == nsnull) return (NS_ERROR_OUT_OF_MEMORY); + nsISupportsArray *tempArray; + if (NS_FAILED(rv = NS_NewISupportsArray(&tempArray))) + return(rv); while (1) { rv = properties->Advance(); @@ -573,10 +574,19 @@ RDFGenericBuilderImpl::CreateContents(nsIContent* aElement) NS_ERROR("unable to create widget item"); } } + + for (int i = numElements - 1; i >=0; i--) + { + NS_IF_RELEASE(flatArray[i]); + } delete [] flatArray; } } - delete tempArray; + for (int i = numElements - 1; i >= 0; i--) + { + tempArray->RemoveElementAt(i); + } + NS_IF_RELEASE(tempArray); return NS_OK; } diff --git a/mozilla/rdf/content/src/nsRDFGenericBuilder.cpp b/mozilla/rdf/content/src/nsRDFGenericBuilder.cpp index 770014df9f8..f2e7e595a6b 100644 --- a/mozilla/rdf/content/src/nsRDFGenericBuilder.cpp +++ b/mozilla/rdf/content/src/nsRDFGenericBuilder.cpp @@ -484,8 +484,9 @@ RDFGenericBuilderImpl::CreateContents(nsIContent* aElement) return rv; // rjc - sort - nsVoidArray *tempArray; - if ((tempArray = new nsVoidArray()) == nsnull) return (NS_ERROR_OUT_OF_MEMORY); + nsISupportsArray *tempArray; + if (NS_FAILED(rv = NS_NewISupportsArray(&tempArray))) + return(rv); while (1) { rv = properties->Advance(); @@ -573,10 +574,19 @@ RDFGenericBuilderImpl::CreateContents(nsIContent* aElement) NS_ERROR("unable to create widget item"); } } + + for (int i = numElements - 1; i >=0; i--) + { + NS_IF_RELEASE(flatArray[i]); + } delete [] flatArray; } } - delete tempArray; + for (int i = numElements - 1; i >= 0; i--) + { + tempArray->RemoveElementAt(i); + } + NS_IF_RELEASE(tempArray); return NS_OK; } diff --git a/mozilla/rdf/content/src/nsXULTemplateBuilder.cpp b/mozilla/rdf/content/src/nsXULTemplateBuilder.cpp index 770014df9f8..f2e7e595a6b 100644 --- a/mozilla/rdf/content/src/nsXULTemplateBuilder.cpp +++ b/mozilla/rdf/content/src/nsXULTemplateBuilder.cpp @@ -484,8 +484,9 @@ RDFGenericBuilderImpl::CreateContents(nsIContent* aElement) return rv; // rjc - sort - nsVoidArray *tempArray; - if ((tempArray = new nsVoidArray()) == nsnull) return (NS_ERROR_OUT_OF_MEMORY); + nsISupportsArray *tempArray; + if (NS_FAILED(rv = NS_NewISupportsArray(&tempArray))) + return(rv); while (1) { rv = properties->Advance(); @@ -573,10 +574,19 @@ RDFGenericBuilderImpl::CreateContents(nsIContent* aElement) NS_ERROR("unable to create widget item"); } } + + for (int i = numElements - 1; i >=0; i--) + { + NS_IF_RELEASE(flatArray[i]); + } delete [] flatArray; } } - delete tempArray; + for (int i = numElements - 1; i >= 0; i--) + { + tempArray->RemoveElementAt(i); + } + NS_IF_RELEASE(tempArray); return NS_OK; }