diff --git a/Generals/Code/GameEngine/Include/Common/STLTypedefs.h b/Generals/Code/GameEngine/Include/Common/STLTypedefs.h index f8fa418c00..76c5076134 100644 --- a/Generals/Code/GameEngine/Include/Common/STLTypedefs.h +++ b/Generals/Code/GameEngine/Include/Common/STLTypedefs.h @@ -204,10 +204,15 @@ namespace rts template<> struct hash { - size_t operator()(AsciiString ast) const - { - std::hash tmp; - return tmp((const char *) ast.str()); + size_t operator()(const AsciiString& ast) const + { +#ifdef USING_STLPORT + std::hash tmp; + return tmp((const char*)ast.str()); +#else + std::hash hasher; + return hasher(std::string_view(ast.str(), ast.getLength())); +#endif } };