NS_IMETHODIMP nsDriveEnumerator::HasMoreElements(PRBool *aHasMore) { *aHasMore = *mLetter != '\0'; return NS_OK; }
NS_IMETHOD HasMoreElements(PRBool *result) { nsresult rv; if (mNext == nsnull && mDir) { PRDirEntry* entry = PR_ReadDir(mDir, PR_SKIP_BOTH); if (entry == nsnull) {   PRStatus status = PR_CloseDir(mDir); if (status != PR_SUCCESS) return NS_ERROR_FAILURE; mDir = nsnull;  *result = PR_FALSE; return NS_OK; }  nsCOMPtr<nsIFile> file; rv = mParent->Clone(getter_AddRefs(file)); if (NS_FAILED(rv)) return rv;  rv = file->AppendNative(nsDependentCString(entry->name)); if (NS_FAILED(rv)) return rv;   PRBool exists; rv = file->Exists(&exists); if (NS_FAILED(rv) || !exists) { return HasMoreElements(result); }  mNext = do_QueryInterface(file); } *result = mNext != nsnull; return NS_OK; }
NS_IMETHODIMP nsDriveEnumerator::HasMoreElements(PRBool *aHasMore){    *aHasMore = *mLetter != '\0';    return NS_OK;}