Make cmdline writable (cmdline4)

Francois Gouget fgouget at free.fr
Fri Sep 7 14:39:20 CDT 2001


On 7 Sep 2001, Alexandre Julliard wrote:

> Francois Gouget <fgouget at free.fr> writes:
> 
> >    No I don't have a 'real world' exemple where this is a problem. I
> > became aware of the issue because of warnings when I was working on
> > dlls/msvcrt/process.c: system is const char* so I made msvcrt_spawn
> > const char* but then I had to add a cast when calling CreateProcessA
> > (see second hunk of cmdline3).
> 
> The cast is wrong, we should do a copy there. CreateProcess takes a
> char*, not a const char*. Casting off the const and relying on
> CreateProcess to not modify the string is broken.
> 
> Even better would be to convert the string to Unicode and call
> CreateProcessW; this would avoid a copy (well, right now it will cost
> an extra copy, but that's because CreateProcess should be fixed to do
> everything in Unicode).

   Ok, I'll do that and resubmit cmdline3 (the msvcrt part, not the
CreateProcessW part :-)


--
Francois Gouget         fgouget at free.fr        http://fgouget.free.fr/
                               {free} || die "";





More information about the wine-devel mailing list