RFE 4519026: (process) Process should support Unicode on Win NT, request for review (original) (raw)
Heiko Wagner heiko.wagner at apis.de
Mon Mar 23 10:56:48 UTC 2009
- Previous message: RFE 4519026: (process) Process should support Unicode on Win NT, request for review
- Next message: RFE 4519026: (process) Process should support Unicode on Win NT, request for review
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Thanks for the description of the comment writing style. I have investigated, why I get a return code of 6. This return code indicates that java.exe launcher fails to start the Java VM. I will try to explain step by step. ;-)
This is the test code that fails:
try {
ProcessBuilder pb = new ProcessBuilder();
pb.environment().clear();
equal(getenvInChild(pb), "");
} catch (Throwable t) { unexpected(t); }
- this code does start the java.exe
- java.exe tries to start the Java VM in function LoadJavaVM
- LoadJavaVM tries to load the jvm.dll via LoadLibrary
- LoadLibrary loads the jvm.dll and it's dependent libraries, in particular the C runtime lib
- loading of the MSCV90.DLL fails with error message: "Unable to resolve storage root for assembly directory x86_Microsoft.VC90.CRT" This is caused by the "pb.environment().clear()", because it clears the env variable %SystemRoot%.
- LoadLibrary fails due to missing dependencies, thus causing java.exe fail with exit code 6
You might not experience this problem, when you compile the JDK with an oder MS VC++ version. According to the build readme in the JDK VS2008 is required ("...The 32-bit OpenJDK Windows build requires Microsoft Visual Studio C++ 2008 (VS2008) Standard Edition compiler..."), but it seems the binary build downloads on the openJDK site use an older version of Visual Studio.
-----Original Message----- From: Martin Buchholz [mailto:martinrb at google.com] Sent: Montag, 23. März 2009 04:24 To: Heiko Wagner Cc: core-libs-dev at openjdk.java.net; Xueming Shen; Alan Bateman Subject: Re: RFE 4519026: (process) Process should support Unicode on Win NT, request for review
Heiko, Thanks for your continuing work on this.
ProcessBuilder/Basic.java has most of the tests related to subprocesses. I can't explain a return code of 6, since the test uses 5, 7, and 8.
ProcessBuilder has a lot of infrastructure to help you write a test in this area, but it can be intimidating to newcomers (i.e. anyone but myself).
The JDK C code is quite inconsistent, but please use the style
/*
- comments
- here */
for block comments, and /* inline comments */ like this.
You need to remove the comment /* selected based on exe type */ which is no longer correct.
If you fix the style things, and get the tests to pass, and add a test for what you're actually trying to fix, I am ready to approve the change.
Martin
- Previous message: RFE 4519026: (process) Process should support Unicode on Win NT, request for review
- Next message: RFE 4519026: (process) Process should support Unicode on Win NT, request for review
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]