MCPcopy Create free account
hub / github.com/aardappel/lobster / OnCallstackEntry

Method OnCallstackEntry

dev/include/StackWalker/StackWalker.cpp:1593–1622  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1591}
1592
1593void StackWalker::OnCallstackEntry(CallstackEntryType eType, CallstackEntry& entry)
1594{
1595 CHAR buffer[STACKWALK_MAX_NAMELEN];
1596 size_t maxLen = STACKWALK_MAX_NAMELEN;
1597#if _MSC_VER >= 1400
1598 maxLen = _TRUNCATE;
1599#endif
1600 if ((eType != lastEntry) && (entry.offset != 0))
1601 {
1602 if (entry.name[0] == 0)
1603 MyStrCpy(entry.name, STACKWALK_MAX_NAMELEN, "(function-name not available)");
1604 if (entry.undName[0] != 0)
1605 MyStrCpy(entry.name, STACKWALK_MAX_NAMELEN, entry.undName);
1606 if (entry.undFullName[0] != 0)
1607 MyStrCpy(entry.name, STACKWALK_MAX_NAMELEN, entry.undFullName);
1608 if (entry.lineFileName[0] == 0)
1609 {
1610 MyStrCpy(entry.lineFileName, STACKWALK_MAX_NAMELEN, "(filename not available)");
1611 if (entry.moduleName[0] == 0)
1612 MyStrCpy(entry.moduleName, STACKWALK_MAX_NAMELEN, "(module-name not available)");
1613 _snprintf_s(buffer, maxLen, "%p (%s): %s: %s\n", (LPVOID)entry.offset, entry.moduleName,
1614 entry.lineFileName, entry.name);
1615 }
1616 else
1617 _snprintf_s(buffer, maxLen, "%s (%d): %s\n", entry.lineFileName, entry.lineNumber,
1618 entry.name);
1619 buffer[STACKWALK_MAX_NAMELEN - 1] = 0;
1620 OnOutput(buffer);
1621 }
1622}
1623
1624void StackWalker::OnDbgHelpErr(LPCSTR szFuncName, DWORD gle, DWORD64 addr)
1625{

Callers 1

StackWalker.cppFile · 0.80

Calls 1

MyStrCpyFunction · 0.85

Tested by

no test coverage detected