On Tuesday, 9 October 2012 at 10:21:58 UTC, Regan Heath wrote:
On Mon, 08 Oct 2012 19:32:40 +0100, Jakob Ovrum <[email protected]> wrote:
XChat uses gmodule - part of glib - to load plugins. I looked at gmodule's Windows implementation, and it uses LoadLibraryW.

Does your dummy C host application also use gmodule to load the dll.. that might be a useful experiment perhaps.

R

I tried this, and the results are illuminating.

I added gmodule support to the C host, enabling switching between using gmodule and direct WinAPI at the switch of a preprocessor define.

When the WinAPI is used directly, they get their correct initializers like before (I included some variables with explicit initializers too, like void* test3 = cast(void*)1).

When gmodule is used, the test TLS variables contain garbage! The garbage values are different every time the program runs.

I'll look closer at what gmodule is doing.

Reply via email to