MCPcopy Create free account
hub / github.com/JochenKalmbach/StackWalker / OnSymInit

Method OnSymInit

Main/StackWalker/StackWalker.cpp:1421–1464  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1419}
1420
1421void StackWalker::OnSymInit(LPCSTR szSearchPath, DWORD symOptions, LPCSTR szUserName)
1422{
1423 CHAR buffer[STACKWALK_MAX_NAMELEN];
1424 size_t maxLen = STACKWALK_MAX_NAMELEN;
1425#if _MSC_VER >= 1400
1426 maxLen = _TRUNCATE;
1427#endif
1428 _snprintf_s(buffer, maxLen, "SymInit: Symbol-SearchPath: '%s', symOptions: %d, UserName: '%s'\n",
1429 szSearchPath, symOptions, szUserName);
1430 buffer[STACKWALK_MAX_NAMELEN - 1] = 0;
1431 OnOutput(buffer);
1432 // Also display the OS-version
1433#if _MSC_VER <= 1200
1434 OSVERSIONINFOA ver;
1435 ZeroMemory(&ver, sizeof(OSVERSIONINFOA));
1436 ver.dwOSVersionInfoSize = sizeof(ver);
1437 if (GetVersionExA(&ver) != FALSE)
1438 {
1439 _snprintf_s(buffer, maxLen, "OS-Version: %d.%d.%d (%s)\n", ver.dwMajorVersion,
1440 ver.dwMinorVersion, ver.dwBuildNumber, ver.szCSDVersion);
1441 buffer[STACKWALK_MAX_NAMELEN - 1] = 0;
1442 OnOutput(buffer);
1443 }
1444#else
1445 OSVERSIONINFOEXA ver;
1446 ZeroMemory(&ver, sizeof(OSVERSIONINFOEXA));
1447 ver.dwOSVersionInfoSize = sizeof(ver);
1448#if _MSC_VER >= 1900
1449#pragma warning(push)
1450#pragma warning(disable : 4996)
1451#endif
1452 if (GetVersionExA((OSVERSIONINFOA*)&ver) != FALSE)
1453 {
1454 _snprintf_s(buffer, maxLen, "OS-Version: %d.%d.%d (%s) 0x%x-0x%x\n", ver.dwMajorVersion,
1455 ver.dwMinorVersion, ver.dwBuildNumber, ver.szCSDVersion, ver.wSuiteMask,
1456 ver.wProductType);
1457 buffer[STACKWALK_MAX_NAMELEN - 1] = 0;
1458 OnOutput(buffer);
1459 }
1460#if _MSC_VER >= 1900
1461#pragma warning(pop)
1462#endif
1463#endif
1464}
1465
1466void StackWalker::OnOutput(LPCSTR buffer)
1467{

Callers 1

InitMethod · 0.80

Calls

no outgoing calls

Tested by

no test coverage detected