diff --git a/Core/TextureReplacer.h b/Core/TextureReplacer.h index 13d16bc873..190c0f0b06 100644 --- a/Core/TextureReplacer.h +++ b/Core/TextureReplacer.h @@ -17,6 +17,7 @@ #pragma once +#include #include #include #include @@ -68,8 +69,16 @@ struct ReplacementCacheKey { bool operator ==(const ReplacementCacheKey &k) const { return k.cachekey == cachekey && k.hash == hash; } + + bool operator <(const ReplacementCacheKey &k) const { + if (k.cachekey == cachekey) { + return k.hash < hash; + } + return k.cachekey < cachekey; + } }; +#ifndef __SYMBIAN32__ namespace std { template <> struct hash { @@ -78,6 +87,7 @@ namespace std { } }; } +#endif struct ReplacedTexture { inline bool Valid() { @@ -150,9 +160,18 @@ protected: ReplacedTextureHash hash_; std::unordered_map aliases_; typedef std::pair WidthHeightPair; +#ifdef __SYMBIAN32__ + std::map hashranges_; +#else std::unordered_map hashranges_; +#endif ReplacedTexture none_; +#ifdef __SYMBIAN32__ + std::map cache_; + std::map savedCache_; +#else std::unordered_map cache_; std::unordered_map savedCache_; +#endif };