MCPcopy Create free account
hub / github.com/KDAB/GammaRay / OnCallstackEntry

Method OnCallstackEntry

3rdparty/StackWalker/StackWalker.cpp:1456–1485  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1454}
1455
1456void StackWalker::OnCallstackEntry(CallstackEntryType eType, CallstackEntry& entry)
1457{
1458 CHAR buffer[STACKWALK_MAX_NAMELEN];
1459 size_t maxLen = STACKWALK_MAX_NAMELEN;
1460#if _MSC_VER >= 1400
1461 maxLen = _TRUNCATE;
1462#endif
1463 if ((eType != lastEntry) && (entry.offset != 0))
1464 {
1465 if (entry.name[0] == 0)
1466 MyStrCpy(entry.name, STACKWALK_MAX_NAMELEN, "(function-name not available)");
1467 if (entry.undName[0] != 0)
1468 MyStrCpy(entry.name, STACKWALK_MAX_NAMELEN, entry.undName);
1469 if (entry.undFullName[0] != 0)
1470 MyStrCpy(entry.name, STACKWALK_MAX_NAMELEN, entry.undFullName);
1471 if (entry.lineFileName[0] == 0)
1472 {
1473 MyStrCpy(entry.lineFileName, STACKWALK_MAX_NAMELEN, "(filename not available)");
1474 if (entry.moduleName[0] == 0)
1475 MyStrCpy(entry.moduleName, STACKWALK_MAX_NAMELEN, "(module-name not available)");
1476 _snprintf_s(buffer, maxLen, "%p (%s): %s: %s\n", (LPVOID)entry.offset, entry.moduleName,
1477 entry.lineFileName, entry.name);
1478 }
1479 else
1480 _snprintf_s(buffer, maxLen, "%s (%d): %s\n", entry.lineFileName, entry.lineNumber,
1481 entry.name);
1482 buffer[STACKWALK_MAX_NAMELEN - 1] = 0;
1483 OnOutput(buffer);
1484 }
1485}
1486
1487void StackWalker::OnDbgHelpErr(LPCSTR szFuncName, DWORD gle, DWORD64 addr)
1488{

Callers 1

StackWalker.cppFile · 0.45

Calls 1

MyStrCpyFunction · 0.85

Tested by

no test coverage detected