https://bugs.winehq.org/show_bug.cgi?id=45320
Jason Edmeades us@edmeades.me.uk changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #62293|0 |1 is obsolete| |
--- Comment #10 from Jason Edmeades us@edmeades.me.uk --- Created attachment 62294 --> https://bugs.winehq.org/attachment.cgi?id=62294 Program in the form of individual pass/fail tests
I reworked my program and added more experiments, plus converted it more to a pass/fail set of operations. It highlights wine gets it wrong when the exe is built with /MD (In my case, imports from MSVCR110.dll) and passes when the exe is build with /MT (I believe this builds in the calls).
Under wine: Script started on 2018-09-14 23:25:41+0100 wine cmd /c testmd OK - Prove not in getenv: Getenv (null) ERROR - Found in Environ: =Z:=Z:\jason\test\45320 OK - Prove found via GetEnvironmentVariable Z:\jason\test\45320 (19, 0) ERROR - Found in Envp: =Z:=Z:\jason\test\45320 OK - Prove found in GetEnvironmentStrings: =Z:=Z:\jason\test\45320 Prove current directory and =Z:: are independant: Before, curdir: Z:\jason\test\45320 Change env var with SetEnvironmentVariable (19, 0) Check env var change works with GetEnvironmentVariable2 Z:\ (3, 0) OK - Has dir changed (it shouldnt) - Curdir: Z:\jason\test\45320 Prove changing directory does not change =Z: Change into a subdir Has the variable changed? Should be what was set higher, ie Z:\ Current directory: Z:\jason\test\45320\subdir OK - GetEnvironmentVariable3 Z:\ (3, 0) Prove putenv fails to set one: OK - putenv failed OK - Prove not in environment now Getenv empty OK - Not in win32 environ either (0, 203) Press any key to end
wine cmd /c testmt OK - Prove not in getenv: Getenv (null) OK - Prove not found in Environ OK - Prove found via GetEnvironmentVariable Z:\jason\test\45320 (19, 0) OK - Prove not found in envp OK - Prove found in GetEnvironmentStrings: =Z:=Z:\jason\test\45320 Prove current directory and =Z:: are independant: Before, curdir: Z:\jason\test\45320 Change env var with SetEnvironmentVariable (19, 0) Check env var change works with GetEnvironmentVariable2 Z:\ (3, 0) OK - Has dir changed (it shouldnt) - Curdir: Z:\jason\test\45320 Prove changing directory does not change =Z: Change into a subdir Has the variable changed? Should be what was set higher, ie Z:\ Current directory: Z:\jason\test\45320\subdir OK - GetEnvironmentVariable3 Z:\ (3, 0) Prove putenv fails to set one: OK - putenv failed OK - Prove not in environment now Getenv empty OK - Not in win32 environ either (0, 203) Press any key to end