Purpose of this change is to allow replacing file.pcx in LOD with file.anyExtension in folder. But since we have file.def, file.msk, file.msg I’ve added that changes.
As result file.def can be replaced with file.whatever and file.msk with file#msk.whatever
If I am correct such error can appear only if this file is missing in .lod archive but present in /sprites folder. Don’t see any other way to cause this…
In this case replacing this lines:
CLodHandler:264
if ( dotPos != -1 )//extension found
name.erase(dotPos);
with the lines you mentioned:
CLodHandler:237
std::string ext = name.substr(dotPos);
if (ext == ".MSK" || ext == ".MSG")
name[dotPos] = '#';//this files have same name as def - rename to defName#msk
else
name.erase(dotPos);//filename.ext becomes filename