replaced patch for mitigating crash caused by too many maps

This commit is contained in:
Your Name 2023-12-18 21:25:48 +01:00
parent 47bab9cb54
commit 7dcd40b834

View File

@ -258,13 +258,29 @@ static struct SrcdsPatch
(unsigned char *)"\xEB\x23\x89\xD0\x25\x00\x00\x00\x00\xC1\xE0\x04",
"cstrike/bin/server_srv.so"
},
// 14: CZipPackFile::Prepare: Always jump into "Pack file uses unsupported compression method:"
//this avoids crashes when loading maps because of unsigned short overflowing.
// 14: I CUtlLinkedList<T,S,ML,I,M>::AllocInternal( bool multilist )
//skip CUtlLinkedList overflow! (exhausted memory allocator) and CUtlLinkedList overflow! (exhausted index range)
//this avoids crashing when loading over 64k strings into stringpool. Custom assets in maps lead towards the limit. jenz- December 2023
{
"_ZN12CZipPackFile7PrepareExx",
(unsigned char *)"\x0F\x85\x32\x03\x00\x00",
"_ZN14CUtlLinkedListI16CUtlKeyValuePairI19CUtlConstStringBaseIcE7empty_tEtLb0Et10CUtlMemoryI19UtlLinkedListElem_tIS4_tEtEE13AllocInternalEb",
(unsigned char *)"\x74\x0C",
"xx",
(unsigned char *)"\x90\x90",
"bin/dedicated_srv.so"
},
{
"_ZN14CUtlLinkedListI16CUtlKeyValuePairI19CUtlConstStringBaseIcE7empty_tEtLb0Et10CUtlMemoryI19UtlLinkedListElem_tIS4_tEtEE13AllocInternalEb",
(unsigned char *)"\x0F\x87\x7A\xFF\xFF\xFF",
"xxxxxx",
(unsigned char *)"\xEB\x85\x32\x03\x00\x00" ,
(unsigned char *)"\xEB\x87\x7A\xFF\xFF\xFF",
"bin/dedicated_srv.so"
},
{
"_ZN14CUtlLinkedListI16CUtlKeyValuePairI19CUtlConstStringBaseIcE7empty_tEtLb0Et10CUtlMemoryI19UtlLinkedListElem_tIS4_tEtEE13AllocInternalEb",
(unsigned char *)"\x0F\x84\x9C\x00\x00\x00",
"xxxxxx",
(unsigned char *)"\x90\x90\x90\x90\x90\x90",
"bin/dedicated_srv.so"
},
};