From 87d6231b3d51652ca626f010d86dea7ad7a62098 Mon Sep 17 00:00:00 2001 From: "waterson%netscape.com" Date: Sun, 23 May 1999 21:33:54 +0000 Subject: [PATCH] Use new enumerator. git-svn-id: svn://10.0.0.236/branches/ENUMERATOR_19990424_BRANCH@32503 18797224-902f-48f8-a5cc-f745e15eee43 --- mozilla/profile/src/nsProfile.cpp | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/mozilla/profile/src/nsProfile.cpp b/mozilla/profile/src/nsProfile.cpp index 5575a29e60f..b927d2e0795 100644 --- a/mozilla/profile/src/nsProfile.cpp +++ b/mozilla/profile/src/nsProfile.cpp @@ -281,11 +281,13 @@ NS_IMETHODIMP nsProfile::GetProfileCount(int *numProfiles) if (NS_SUCCEEDED(rv)) { int numKeys=0; - rv = enumKeys->First(); + // Enumerate subkeys till done. - while( NS_SUCCEEDED( rv ) && !enumKeys->IsDone() ) + PRBool hasMore; + while( NS_SUCCEEDED( rv = enumKeys->HasMoreElements(&hasMore) ) && hasMore ) { - rv = enumKeys->Next(); + nsCOMPtr next; + rv = enumKeys->GetNext(getter_AddRefs(next)); numKeys++; } *numProfiles = numKeys; @@ -326,10 +328,10 @@ NS_IMETHODIMP nsProfile::GetSingleProfile(char **profileName) rv = reg->EnumerateSubtrees( key, &enumKeys ); // Go to beginning. - rv = enumKeys->First(); - if(NS_SUCCEEDED(rv)&& !enumKeys->IsDone() ) { + PRBool hasMore; + if(NS_SUCCEEDED(rv = enumKeys->HasMoreElements(&hasMore)) && hasMore) { nsISupports *base; - rv = enumKeys->CurrentItem( &base ); + rv = enumKeys->GetNext( &base ); // Test result. if (NS_SUCCEEDED(rv)) { @@ -350,7 +352,9 @@ NS_IMETHODIMP nsProfile::GetSingleProfile(char **profileName) // Print name: printf( "\t\t%s", *profileName); } + NS_RELEASE(node); } + NS_RELEASE(base); } } }