Fix TPA map hash calculation. (#288)
[platform/upstream/coreclr.git] / src / binder / inc / applicationcontext.hpp
index 9c89262..f315b32 100644 (file)
@@ -38,7 +38,7 @@ namespace BINDER_SPACE
         typedef PCWSTR key_t;
         static const FileNameMapEntry Null() { FileNameMapEntry e; e.m_wszFileName = nullptr; return e; }
         static bool IsNull(const FileNameMapEntry & e) { return e.m_wszFileName == nullptr; }
-        static const key_t GetKey(const FileNameMapEntry & e)
+        static key_t GetKey(const FileNameMapEntry & e)
         {
             key_t key;
             key = e.m_wszFileName;
@@ -65,14 +65,18 @@ namespace BINDER_SPACE
         typedef PCWSTR key_t;
         static const SimpleNameToFileNameMapEntry Null() { SimpleNameToFileNameMapEntry e; e.m_wszSimpleName = nullptr; return e; }
         static bool IsNull(const SimpleNameToFileNameMapEntry & e) { return e.m_wszSimpleName == nullptr; }
-        static const key_t GetKey(const SimpleNameToFileNameMapEntry & e)
+        static key_t GetKey(const SimpleNameToFileNameMapEntry & e)
         {
             key_t key;
             key = e.m_wszSimpleName;
             return key;
         }
-        static count_t Hash(const key_t &str) { return HashiString(str); }
-        static BOOL Equals(const key_t &lhs, const key_t &rhs) { LIMITED_METHOD_CONTRACT; return (_wcsicmp(lhs, rhs) == 0); }
+        static count_t Hash(const key_t &str)
+        {
+            SString ssKey(SString::Literal, str);
+            return ssKey.HashCaseInsensitive();
+        }
+        static BOOL Equals(const key_t &lhs, const key_t &rhs) { LIMITED_METHOD_CONTRACT; return (SString::_wcsicmp(lhs, rhs) == 0); }
         
         void OnDestructPerEntryCleanupAction(const SimpleNameToFileNameMapEntry & e)
         {
@@ -173,19 +177,6 @@ namespace BINDER_SPACE
 
         SimpleNameToFileNameMap * m_pTrustedPlatformAssemblyMap;
         TpaFileNameHash    * m_pFileNameHash;
-        
-        bool m_fCanExplicitlyBindToNativeImages;
-public:        
-        inline void SetExplicitBindToNativeImages(bool fCanExplicitlyBindToNativeImages)
-        {
-            m_fCanExplicitlyBindToNativeImages = fCanExplicitlyBindToNativeImages;
-        }
-        
-        inline bool CanExplicitlyBindToNativeImages()
-        {
-            return m_fCanExplicitlyBindToNativeImages;
-        }
-protected:        
     };
 
 #include "applicationcontext.inl"