diff options
Diffstat (limited to 'core/fxcrt/fx_extension.cpp')
-rw-r--r-- | core/fxcrt/fx_extension.cpp | 28 |
1 files changed, 10 insertions, 18 deletions
diff --git a/core/fxcrt/fx_extension.cpp b/core/fxcrt/fx_extension.cpp index f1fd980120..53fcf45ef5 100644 --- a/core/fxcrt/fx_extension.cpp +++ b/core/fxcrt/fx_extension.cpp @@ -217,14 +217,10 @@ int32_t FXSYS_strnicmp(const FX_CHAR* s1, const FX_CHAR* s2, size_t count) { } return ch1 - ch2; } -uint32_t FX_HashCode_String_GetA(const FX_CHAR* pStr, - int32_t iLength, - FX_BOOL bIgnoreCase) { - FXSYS_assert(pStr); - if (iLength < 0) { - iLength = (int32_t)FXSYS_strlen(pStr); - } - const FX_CHAR* pStrEnd = pStr + iLength; + +uint32_t FX_HashCode_GetA(const CFX_ByteStringC& str, bool bIgnoreCase) { + const FX_CHAR* pStr = str.c_str(); + const FX_CHAR* pStrEnd = pStr + str.GetLength(); uint32_t dwHashCode = 0; if (bIgnoreCase) { while (pStr < pStrEnd) { @@ -237,14 +233,10 @@ uint32_t FX_HashCode_String_GetA(const FX_CHAR* pStr, } return dwHashCode; } -uint32_t FX_HashCode_String_GetW(const FX_WCHAR* pStr, - int32_t iLength, - FX_BOOL bIgnoreCase) { - FXSYS_assert(pStr); - if (iLength < 0) { - iLength = (int32_t)FXSYS_wcslen(pStr); - } - const FX_WCHAR* pStrEnd = pStr + iLength; + +uint32_t FX_HashCode_GetW(const CFX_WideStringC& str, bool bIgnoreCase) { + const FX_WCHAR* pStr = str.c_str(); + const FX_WCHAR* pStrEnd = pStr + str.GetLength(); uint32_t dwHashCode = 0; if (bIgnoreCase) { while (pStr < pStrEnd) { @@ -327,9 +319,9 @@ void FX_Random_GenerateBase(uint32_t* pBuffer, int32_t iCount) { ::GetSystemTime(&st2); } while (FXSYS_memcmp(&st1, &st2, sizeof(SYSTEMTIME)) == 0); uint32_t dwHash1 = - FX_HashCode_String_GetA((const FX_CHAR*)&st1, sizeof(st1), TRUE); + FX_HashCode_GetA(CFX_ByteStringC((uint8_t*)&st1, sizeof(st1)), true); uint32_t dwHash2 = - FX_HashCode_String_GetA((const FX_CHAR*)&st2, sizeof(st2), TRUE); + FX_HashCode_GetA(CFX_ByteStringC((uint8_t*)&st2, sizeof(st2)), true); ::srand((dwHash1 << 16) | (uint32_t)dwHash2); #else time_t tmLast = time(NULL); |