This commit is contained in:
mkaply%us.ibm.com 2005-11-18 18:54:19 +00:00
Родитель 836ec9014a
Коммит 28a72e5ab2
2 изменённых файлов: 27 добавлений и 1 удалений

Просмотреть файл

@ -2345,6 +2345,27 @@ nsLocalFile::GetTarget(nsAString &_retval)
return rv; return rv;
} }
// nsIHashable
NS_IMETHODIMP
nsLocalFile::Equals(nsIHashable* aOther, PRBool *aResult)
{
nsCOMPtr<nsIFile> otherfile(do_QueryInterface(aOther));
if (!otherfile) {
*aResult = PR_FALSE;
return NS_OK;
}
return Equals(otherfile, aResult);
}
NS_IMETHODIMP
nsLocalFile::GetHashCode(PRUint32 *aResult)
{
*aResult = nsCRT::HashCode(mWorkingPath.get());
return NS_OK;
}
nsresult nsresult
NS_NewLocalFile(const nsAString &path, PRBool followLinks, nsILocalFile* *result) NS_NewLocalFile(const nsAString &path, PRBool followLinks, nsILocalFile* *result)
{ {

Просмотреть файл

@ -55,6 +55,7 @@
#include "nsIFile.h" #include "nsIFile.h"
#include "nsIFactory.h" #include "nsIFactory.h"
#include "nsILocalFileOS2.h" #include "nsILocalFileOS2.h"
#include "nsIHashable.h"
#define INCL_DOSFILEMGR #define INCL_DOSFILEMGR
#define INCL_DOSERRORS #define INCL_DOSERRORS
@ -70,7 +71,8 @@
class TypeEaEnumerator; class TypeEaEnumerator;
class NS_COM nsLocalFile : public nsILocalFileOS2 class NS_COM nsLocalFile : public nsILocalFileOS2,
public nsIHashable
{ {
public: public:
NS_DEFINE_STATIC_CID_ACCESSOR(NS_LOCAL_FILE_CID) NS_DEFINE_STATIC_CID_ACCESSOR(NS_LOCAL_FILE_CID)
@ -91,6 +93,9 @@ public:
// nsILocalFileOS2 interface // nsILocalFileOS2 interface
NS_DECL_NSILOCALFILEOS2 NS_DECL_NSILOCALFILEOS2
// nsIHashable interface
NS_DECL_NSIHASHABLE
public: public:
static void GlobalInit(); static void GlobalInit();
static void GlobalShutdown(); static void GlobalShutdown();