Thread overview
[Issue 17132] Using DLL makes an empty stacktrace on error
Dec 17, 2022
Iain Buclaw
January 31, 2017
https://issues.dlang.org/show_bug.cgi?id=17132

--- Comment #1 from jiki@red.email.ne.jp ---
The reason is that each dlls and app initialize the own druntime (and
stacktrace modules)
though the Windows' DBGHELP does not allow to initialize *more than once*.
https://msdn.microsoft.com/en-us/library/windows/desktop/ms681351(v=vs.85).aspx

So the latter initialization for app fails, leaving the initialized flag false.


QUICK WORKAROUND:
at core.sys.windows.stacktrace: shared static this()

    dbghelp.SymCleanup(hProcess); // @@@ ADD
    if (!dbghelp.SymInitialize(hProcess, generateSearchPath().ptr, TRUE))
        return;

NOTE:
For now, we cannot raise exceptions over DLL boundary.
So I've no idea how to solve this correctly.

--
January 31, 2017
https://issues.dlang.org/show_bug.cgi?id=17132

jiki@red.email.ne.jp changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |dll

--
December 17, 2022
https://issues.dlang.org/show_bug.cgi?id=17132

Iain Buclaw <ibuclaw@gdcproject.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Priority|P1                          |P3

--
December 07
https://issues.dlang.org/show_bug.cgi?id=17132

--- Comment #2 from dlangBugzillaToGithub <robert.schadek@posteo.de> ---
THIS ISSUE HAS BEEN MOVED TO GITHUB

https://github.com/dlang/dmd/issues/17343

DO NOT COMMENT HERE ANYMORE, NOBODY WILL SEE IT, THIS ISSUE HAS BEEN MOVED TO GITHUB

--