diff options
author | Oz Linden <oz@lindenlab.com> | 2014-06-16 11:42:37 -0400 |
---|---|---|
committer | Oz Linden <oz@lindenlab.com> | 2014-06-16 11:42:37 -0400 |
commit | e15002a11cf5081e0697065cb017ba0af6c4b32d (patch) | |
tree | d60ac6d3a85d114b7860e42be5d9ff3338a6a169 /indra/newview/llwindebug.cpp | |
parent | 78be5c3aa5f7263698bec5bcbccb24c150f78d09 (diff) | |
parent | 977476171ddcc057d7c28b6c14ae988b8189ed75 (diff) |
merge changes for 3.7.9-release
Diffstat (limited to 'indra/newview/llwindebug.cpp')
-rwxr-xr-x | indra/newview/llwindebug.cpp | 20 |
1 files changed, 15 insertions, 5 deletions
diff --git a/indra/newview/llwindebug.cpp b/indra/newview/llwindebug.cpp index 551d0be8d7..eff70ca0b2 100755 --- a/indra/newview/llwindebug.cpp +++ b/indra/newview/llwindebug.cpp @@ -45,7 +45,7 @@ public: ~LLMemoryReserve(); void reserve(); void release(); -protected: +private: unsigned char *mReserve; static const size_t MEMORY_RESERVATION_SIZE; }; @@ -53,7 +53,7 @@ protected: LLMemoryReserve::LLMemoryReserve() : mReserve(NULL) { -}; +} LLMemoryReserve::~LLMemoryReserve() { @@ -66,14 +66,19 @@ const size_t LLMemoryReserve::MEMORY_RESERVATION_SIZE = 5 * 1024 * 1024; void LLMemoryReserve::reserve() { if(NULL == mReserve) + { mReserve = new unsigned char[MEMORY_RESERVATION_SIZE]; -}; + } +} void LLMemoryReserve::release() { - delete [] mReserve; + if (NULL != mReserve) + { + delete [] mReserve; + } mReserve = NULL; -}; +} static LLMemoryReserve gEmergencyMemoryReserve; @@ -130,6 +135,11 @@ void LLWinDebug::init() } } +void LLWinDebug::cleanup () +{ + gEmergencyMemoryReserve.release(); +} + void LLWinDebug::writeDumpToFile(MINIDUMP_TYPE type, MINIDUMP_EXCEPTION_INFORMATION *ExInfop, const std::string& filename) { // Temporary fix to switch out the code that writes the DMP file. |