| Summary: | [launcher] initialArgv array not always null terminated | ||
|---|---|---|---|
| Product: | [Eclipse Project] Equinox | Reporter: | Andrew Niefer <aniefer> |
| Component: | Framework | Assignee: | equinox.framework-inbox <equinox.framework-inbox> |
| Status: | RESOLVED FIXED | QA Contact: | |
| Severity: | normal | ||
| Priority: | P3 | CC: | tjwatson |
| Version: | 3.6 | ||
| Target Milestone: | 3.7 M2 | ||
| Hardware: | PC | ||
| OS: | Windows XP | ||
| Whiteboard: | |||
|
Description
Andrew Niefer
The binaries we ship for windows are compiled using -entry:wmainCRTStartup which tells the OS to call wmain, so the multi-byte to unicode conversion does not happen here. The cygwin makefile does not specify this entry point, which is why we get the conversion happening during testing with cygwin binaries. http://msdn.microsoft.com/en-us/library/f9t8842e.aspx Is this something that is causing crashes. Is it something to consider for 3.6.1? Do you have a fix? It causes crashes in conjunction with the patch from bug 149994, and probably also if the user types -vmargs on the command line. However, this only happens if we have to do the multi-byte to unicode conversion. The executable we ship specifies the unicode entry point so I don't think anyone hits it. To hit this you need to use the cygwin compiled version, which I use for debug purposes, or you would need to be loading our exe in some other program that was explicitly calling the main() function instead of the wmain(). I don't think this needs to go in 3.6.1. fixed in HEAD |