abseil / abseil/abseil-cpp

Win32 symbolizer does not call SymCleanup()

Open
#752 2 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
18.1k
Forks
3.2k
Avg merge
20h 36m
Merged PRs (30d)
1

Description

absl/debugging/symbolize_win32.inc implements the symbolizer code for win32. However, while it calls SymInitialize() to init the symbolizer, it never calls SymCleanup() to tear it down correctly.

Per https://docs.microsoft.com/en-us/windows/win32/api/dbghelp/nf-dbghelp-symcleanup, "Failure to call this function causes memory and resource leaks in the calling application".

Probably the safest solution would be to replace InitializeSymbolizer() with e. g. a Symbolizer scoping object that could handle initialization and cleanup.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.