﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	severity	resolution	keywords	cc
260	Add global argc and argv pointers	dmik	bird	"Since r3645 (AFAIU), spawn() passes some hidden arguments to the started executable if it is a kLIBC-based one. In some cases this makes problems for other applications. One of such examples is Odin-based applications (e.g. OpenJDK). In Odin, KERNEL32.DLL needs to process the command line. Since the DLL can't currently access the main() arguments, it has to access the command line directly using PIB pointers and this makes those hidden arguments (in particular the ""kLIBC"" signature) visible to the application which it totally does not expect. In particular, java.exe will simply fail with the message like ""cannot filnd class kLIBC"".

For now I have to add a hack to Odin that cuts out the ""kLIBC"" signature from the command line. But this hack depends on kLIBC internals and will not work if these internals change.

A proper way will be to provide global argc and argv pointers that will let any DLL access the command line post-processed by kLIBC in a way it needs."	defect	closed	highest		libc	0.6.4	blocker	fixed		
