[M3commit] CVS Update: cm3
Jay Krell
jkrell at elego.de
Fri May 9 10:11:35 CEST 2008
CVSROOT: /usr/cvs
Changes by: jkrell at birch. 08/05/09 10:11:35
Modified files:
cm3/m3-libs/m3core/src/runtime/WIN32/: RTArgs.m3
cm3/m3-libs/m3core/src/runtime/common/: RTLinker.i3 RTLinker.m3
m3makefile
Added files:
cm3/m3-libs/m3core/src/runtime/common/: RTLinkerC.c
Log message:
fix RTArgs environment variable functionality
that has always been broken in some form or another,
at least back to 3.6, and which changed but didn't get
fixed by Olaf in 2003 with:
http://dcvs.elegosoft.com/cgi-bin/cvsweb.cgi/cm3/m3-libs/m3core/src/runtime/WIN32/RTArgs.m3.diff?r1=1.1;r2=1.2;f=u
I knew! nothing had actually changed here, just that it never really worked, but was slow
to get around to looking into it.
This change is "carefully" written to avoid a compiler/runtime coupling.
However a better change is probably to change the compiler, when targeting NT386, to always call
GetEnvironmentStrings and never use the envp parameter to main.
Or perhaps something sleazy like setting the low bit to indicate "type".
Or perhaps for main/WinMain to set the "useFlatEnv" variable (through a function call,
to avoid dynamically linked data).
More information about the M3commit
mailing list