https://bz.apache.org/bugzilla/show_bug.cgi?id=63625

--- Comment #18 from Norimasa Yamamoto <nor...@sainet.or.jp> ---
I checked WPUTENV prototype.

In src\native\windows\include\apwin.h
typedef int (__stdcall *WPUTENV) (const wchar_t *env);

But I disassembled from ucrtbase.dll!_wputenv om x86 platform,
it seems to be _cdecl (=calling args should be destroyed by caller).

This mismatch will cause stack corruption after calling wputenv_ucrt
on x86. This should be root cause, I think.
(On x64, first few calling args are passed by registers.)

Changing prototype will fix the error from stack corruption.
However, environment block manipulation is not work on AdoptOpenJDK,
because it is depending on msvcr120.dll.

-- 
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to