[Support] Don't print stacktrace if DbgHelp.dll hasn't been loaded yet
authorAndy Yankovsky <weratt@gmail.com>
Mon, 7 Feb 2022 20:37:38 +0000 (20:37 +0000)
committerAndy Yankovsky <weratt@gmail.com>
Tue, 8 Feb 2022 16:37:36 +0000 (16:37 +0000)
commit3df88ec335da7c3ed1625014d6f9b05fd5b54f31
tree149cfbaeffb9559a91175e35da51b14313c03a06
parent5a50ab4d5c2c50ccf2df3b3dffa7519c92b0b01a
[Support] Don't print stacktrace if DbgHelp.dll hasn't been loaded yet

On Windows certain function from `Signals.h` require that `DbgHelp.dll` is loaded. This typically happens when the main program calls `llvm::InitLLVM`, however in some cases main program doesn't do that (e.g. when the application is using LLDB via `liblldb.dll`). This patch adds a safe guard to prevent crashes. More discussion in
https://reviews.llvm.org/D119009.

Reviewed By: aganea

Differential Revision: https://reviews.llvm.org/D119181
llvm/lib/Support/Windows/Signals.inc
llvm/unittests/Support/ProgramTest.cpp
llvm/utils/unittest/UnitTestMain/TestMain.cpp