NS_IMETHODIMP nsDriveEnumerator::GetNext(nsISupports **aNext) {  if (!*mLetter) { *aNext = nsnull; return NS_OK; } const char *drive = mLetter; mLetter += strlen(drive) + 1; nsILocalFile *file; nsresult rv = NS_NewNativeLocalFile(nsDependentCString(drive), PR_FALSE, &file);
NS_IMETHOD GetNext(nsISupports **result) { nsresult rv; PRBool hasMore; rv = HasMoreElements(&hasMore); if (NS_FAILED(rv)) return rv;
NS_IMETHODIMP nsDriveEnumerator::GetNext(nsISupports **aNext){    /* GetLogicalDrives stored in mLetter is a concatenation     * of null terminated strings, followed by a null terminator. */    if (!*mLetter) {        *aNext = nsnull;        return NS_OK;    }    const char *drive = mLetter;    mLetter += strlen(drive) + 1;    nsILocalFile *file;    nsresult rv =         NS_NewNativeLocalFile(nsDependentCString(drive), PR_FALSE, &file);    *aNext = file;    return rv;}