Ticket #564 (closed defect: fixed)
|Reported by:||Philip||Owned by:||jan|
|Priority:||Should Have||Milestone:||Alpha 2|
IVFS::GetRealPath claims to "retrieve the real (POSIX) pathname underlying a VFS file", but it seems to work incorrectly with mods. In particular, it always returns a path like .../data/mods/public/... (or always internal if that mod is loaded), even when the VFS file comes from a different mod.
CXeromyces::GetXMBPath tries to get the mod name from this, which doesn't work since it always returns public (or always internal).
Getting the mod name seems like useful functionality - by separating caches per mod, we can avoid one mod maliciously polluting the cache with a file with the same size/timestamp as another mod's but with different content (which would probably cause OOS errors after the first mod is disabled).
I don't know what GetRealPath should return if the file is in an archive. (It probably doesn't matter here, since archives ought to already contain cached files and we won't need to dynamically generate them.)