diff options
| author | Shauren <shauren.trinity@gmail.com> | 2024-07-06 22:52:11 +0200 |
|---|---|---|
| committer | Shauren <shauren.trinity@gmail.com> | 2024-07-06 22:52:11 +0200 |
| commit | d05dbaaecbd4bf7e1c0fd32d0fef34341b4067f6 (patch) | |
| tree | 7a8e1958ea7e0dabe64700f17021c024c2972ad9 /src/common/Collision/Models | |
| parent | 518fe1fd1ecf107e11336c4a41ed90405b115dc0 (diff) | |
Core/Vmaps: Fixed use after free and deadlocks when loading a model file fails
Diffstat (limited to 'src/common/Collision/Models')
| -rw-r--r-- | src/common/Collision/Models/WorldModel.h | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/src/common/Collision/Models/WorldModel.h b/src/common/Collision/Models/WorldModel.h index 0958e9c308a..5e6d2a8a2fb 100644 --- a/src/common/Collision/Models/WorldModel.h +++ b/src/common/Collision/Models/WorldModel.h @@ -117,7 +117,7 @@ namespace VMAP class TC_COMMON_API WorldModel { public: - WorldModel(): Flags(ModelFlags::None), RootWMOID(0), name(nullptr) { } + WorldModel(): Flags(ModelFlags::None), RootWMOID(0) { } //! pass group models to WorldModel and create BIH. Passed vector is swapped with old geometry! void setGroupModels(std::vector<GroupModel> &models); @@ -129,14 +129,11 @@ namespace VMAP bool readFile(const std::string &filename); bool IsM2() const { return Flags.HasFlag(ModelFlags::IsM2); } std::vector<GroupModel> const& getGroupModels() const { return groupModels; } - std::string const& GetName() const { return *name; } - void SetName(std::string const* newName) { name = newName; } protected: EnumFlag<ModelFlags> Flags; uint32 RootWMOID; std::vector<GroupModel> groupModels; BIH groupTree; - std::string const* name; // valid only while model is held in VMapManager2::iLoadedModelFiles }; } // namespace VMAP |
