mirror of
https://github.com/beefytech/Beef.git
synced 2025-07-04 23:36:00 +02:00
Fixed GC deadlock on exit when reporting leak
This commit is contained in:
parent
dbe38df60f
commit
d0c9145655
1 changed files with 5 additions and 2 deletions
|
@ -1137,7 +1137,7 @@ void BFGC::ProcessSweepInfo()
|
||||||
//::MessageBoxA(NULL, "Leak", "Leak", MB_OK);
|
//::MessageBoxA(NULL, "Leak", "Leak", MB_OK);
|
||||||
|
|
||||||
//#if 0
|
//#if 0
|
||||||
Beefy::String errorStr = StrFormat("%d object memory leak%s detected, details in Output panel.",
|
Beefy::StringT<1024> errorStr = StrFormat("%d object memory leak%s detected, details in Output panel.",
|
||||||
mSweepInfo.mLeakCount, (mSweepInfo.mLeakCount != 1) ? "s" : "");
|
mSweepInfo.mLeakCount, (mSweepInfo.mLeakCount != 1) ? "s" : "");
|
||||||
gDbgErrorString = errorStr;
|
gDbgErrorString = errorStr;
|
||||||
gDbgErrorString += "\n";
|
gDbgErrorString += "\n";
|
||||||
|
@ -1188,7 +1188,10 @@ void BFGC::ProcessSweepInfo()
|
||||||
|
|
||||||
gBfRtDbgCallbacks.SetErrorString(gDbgErrorString.c_str());
|
gBfRtDbgCallbacks.SetErrorString(gDbgErrorString.c_str());
|
||||||
gBfRtDbgCallbacks.DebugMessageData_SetupError(errorStr.c_str(), 1);
|
gBfRtDbgCallbacks.DebugMessageData_SetupError(errorStr.c_str(), 1);
|
||||||
BF_DEBUG_BREAK();
|
|
||||||
|
mCritSect.Unlock();
|
||||||
|
BF_DEBUG_BREAK();
|
||||||
|
mCritSect.Lock();
|
||||||
|
|
||||||
for (auto obj : mSweepInfo.mLeakObjects)
|
for (auto obj : mSweepInfo.mLeakObjects)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue