*_retval = file;
*_retval = NS_STATIC_CAST(nsISupports *, file);
nsDirEnumeratorUnix::GetNext(nsISupports **_retval){    nsresult rv;    if (!mDir || !mEntry) {        *_retval = nsnull;        return NS_OK;    }    nsCOMPtr<nsILocalFile> file = new nsLocalFile();    if (!file)        return NS_ERROR_OUT_OF_MEMORY;    if (NS_FAILED(rv = file->InitWithPath(mParentPath)) ||        NS_FAILED(rv = file->Append(mEntry->d_name))) {        return rv;    }    *_retval = file;    NS_ADDREF(*_retval);    return GetNextEntry();}