MCPcopy Create free account
hub / github.com/beefytech/Beef / DoUpdate

Method DoUpdate

IDEHelper/WinDebugger.cpp:1711–2980  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1709}
1710
1711bool WinDebugger::DoUpdate()
1712{
1713 if ((mDbgProcessId != 0) && ((mDbgAttachFlags & BfDbgAttachFlag_ShutdownOnExit) == 0))
1714 ::DebugSetProcessKillOnExit(FALSE);
1715 else
1716 ::DebugSetProcessKillOnExit(TRUE);
1717
1718 //
1719 {
1720 AutoCrit autoCrit(mDebugManager->mCritSect);
1721 auto _ModuleChanged = [&](DbgModule* dbgModule)
1722 {
1723 ModuleChanged(dbgModule);
1724 ClearCallStack(); // We may have actual dbgSubprograms and stuff now...
1725 };
1726
1727 for (auto dbgModule : mPendingImageLoad)
1728 {
1729 dbgModule->PreCacheImage();
1730 }
1731
1732 for (auto kv : mPendingDebugInfoLoad)
1733 {
1734 kv.mKey->PreCacheDebugInfo();
1735 }
1736
1737 while (!mPendingImageLoad.IsEmpty())
1738 {
1739 auto dbgModule = mPendingImageLoad.back();
1740 mPendingImageLoad.pop_back();
1741 dbgModule->RequestImage();
1742 _ModuleChanged(dbgModule);
1743 }
1744
1745 if (!mPendingDebugInfoLoad.IsEmpty())
1746 {
1747 Array<DbgPendingDebugInfoLoad> pendingList;
1748 for (auto kv : mPendingDebugInfoLoad)
1749 pendingList.Add(kv.mValue);
1750 mPendingDebugInfoLoad.Clear();
1751
1752 for (auto& entry : pendingList)
1753 {
1754 auto dbgModule = entry.mModule;
1755 entry.mModule->RequestDebugInfo(entry.mAllowRemote);
1756 // We do a "_ModuleChanged" even if the load failed, so we rehup the callstack and stop
1757 // saying "<Loading...>"
1758 _ModuleChanged(entry.mModule);
1759 }
1760 }
1761 }
1762
1763 if (IsMiniDumpDebugger())
1764 {
1765 //
1766 {
1767 AutoCrit autoCrit(mDebugManager->mCritSect);
1768 if (mRunState == RunState_Terminating)

Callers

nothing calls this directly

Calls 15

StringClass · 0.85
FilterThreadNameFunction · 0.85
WaitForMethod · 0.80
TryGetValueMethod · 0.80
GetOutputFilterFlagsMethod · 0.80
GetImageSizeMethod · 0.80
SetupTargetBinaryMethod · 0.80
SetupDynMethod · 0.80
UnloadDynMethod · 0.80
frontMethod · 0.80
ReadOrigImageDataMethod · 0.80

Tested by

no test coverage detected