Carbenium d427c853e7 Collision/MMap: Fix a memleak reported by valgrind
Tiles which are owned by the mesh should have the DT_TILE_FREE_DATA flag to ensure
deallocation on removal from the mesh.

Log:
==23516== 6,181,976 bytes in 6 blocks are definitely lost in loss record 15 of 15
==23516==    at 0x4C298A0: operator new[](unsigned long) (vg_replace_malloc.c:389)
==23516==    by 0x2052660: dtCustomAlloc(int, dtAllocHint) (Memory.h:11)
==23516==    by 0x29D7FDA: dtAlloc(int, dtAllocHint) (DetourAlloc.cpp:43)
==23516==    by 0x230AA70: MMAP::MMapManager::loadMap(std::string const&, unsigned int, int, int) (MMapManager.cpp:166)
==23516==    by 0x1DD585B: Map::LoadMMap(int, int) (Map.cpp:125)
==23516==    by 0x1DD7266: Map::LoadMapAndVMap(int, int) (Map.cpp:200)
==23516==    by 0x1DD93C6: Map::EnsureGridCreated_i(CoordPair<64u> const&) (Map.cpp:453)
==23516==    by 0x1DD9129: Map::EnsureGridCreated(CoordPair<64u> const&) (Map.cpp:429)
==23516==    by 0x1DED100: Map::GetGrid(float, float) (Map.cpp:2200)
==23516==    by 0x1DE0F4C: Map::GetAreaFlag(float, float, float, bool*) const (Map.cpp:2349)
==23516==    by 0x198521B: Map::GetZoneId(float, float, float) const (Map.h:353)
==23516==    by 0x197CFF0: WorldObject::GetZoneId() const (Object.cpp:1277)

Phase tiles aren't managed by detour so they shouldn't be free'd automatically on removal.
See MMapManager::UnloadPhaseTile

(cherry picked from commit 32e8b6506fc064fdba134d692dfe99298e43f055)
2016-01-30 20:48:15 +01:00
2016-01-29 17:34:56 +01:00
2015-07-19 13:37:44 +02:00
2015-11-07 19:35:24 +01:00
2013-01-21 02:47:51 +00:00
2016-01-01 12:02:33 +01:00
2016-01-12 14:00:49 +00:00

logo TrinityCore

Issue Stats Issue Stats Bountysource

Build Status

6.x 4.3.4 3.3.5
6.x Build Status 4.3.4 Build Status 3.3.5 Build Status
Coverity Scan Build Status Coverity Scan Build Status

Introduction

TrinityCore is a MMORPG Framework based mostly in C++.

It is derived from MaNGOS, the Massive Network Game Object Server, and is based on the code of that project with extensive changes over time to optimize, improve and cleanup the codebase at the same time as improving the in-game mechanics and functionality.

It is completely open source; community involvement is highly encouraged.

If you wish to contribute ideas or code please visit our site linked below or make pull requests to our Gitlab repository.

For further information on the TrinityCore project, please visit our project website at TrinityCore.org.

Requirements

  • Platform: Linux, Windows or Mac
  • Processor with SSE2 support
  • Boost ≥ 1.49
  • MySQL ≥ 5.1.0
  • CMake ≥ 2.8.11.2 / 2.8.9 (Windows / Linux)
  • OpenSSL ≥ 1.0.0
  • GCC ≥ 4.7.2 (Linux only)
  • MS Visual Studio ≥ 12 (2013) update 4 (Windows only)

Install

Detailed installation guides are available in the wiki for Windows, Linux and Mac OSX. You can get database from https://github.com/TrinityCoreLegacy/TrinityCore/releases

Reporting issues

Issues can be reported via the Gitlab issue tracker.

Please take the time to review existing issues before submitting your own to prevent duplicates.

In addition, thoroughly read through the issue tracker guide to ensure your report contains the required information. Incorrect or poorly formed reports are wasteful and are subject to deletion.

Submitting fixes

Fixes are submitted as pull requests via Github. For more information on how to properly submit a pull request, read the how-to: maintain a remote fork. NOTE: if a fix is valid also for 3.3.5a/6.x branches submit them also to Github

License: GPL 2.0

Read file COPYING

Authors & Contributors

Read file THANKS

Site

Wiki

Documentation (powered by Doxygen)

Forums

S
Description
A modified fork of the Trinitycore cataclysm preservation project
Readme
1,002 MiB
0 Stars 1 Watchers 0 Forks
Languages
C++ 85.6%
C 13.8%
CMake 0.5%