Re: Fix initdb for path with whitespace and at char
От | Amit Kapila |
---|---|
Тема | Re: Fix initdb for path with whitespace and at char |
Дата | |
Msg-id | CAA4eK1JxFG1i7HBJDeDD1dHLmyaPOzOp5qoxPTHUwjK_7eJ-WA@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: Fix initdb for path with whitespace and at char (Heikki Linnakangas <hlinnakangas@vmware.com>) |
Ответы |
Re: Fix initdb for path with whitespace and at char
|
Список | pgsql-hackers |
On Wed, Apr 30, 2014 at 4:01 PM, Heikki Linnakangas <hlinnakangas@vmware.com> wrote: > I committed the non-invasive fixes to backbranches (and master too, just to > keep it in sync), but the attached is what I came up with for master. > > There are a couple of places in the code where we have #ifdef WIN32 code > that uses CreateProcess with "CMD /C ..." directly. 1. Do we need similar handling for CreatePipe case where it directly uses executable path such as in function pipe_read_line()? Currently the caller of pipe_read_line() calls canonicalize_path() to change win32 specific path, is that sufficient or do we need SYSTEMQUOTE type of handling for it. 2. system.c #include <assert.h> Do we really need inclusion of assert.h or this is for future use? 3. One more observation is that currently install.bat doesn't work for such paths: install.bat "e:\PostgreSQL\master\install 1\ins@1" 1\ins@1""=="" was unexpected at this time. 4. Similar to Andrew, I also could not reproduce this problem on my Windows system (Windows 7 64 bit) e:\>"e:\PostgreSQL\master\install 1\ins@1\bin\initdb.exe" -D "e: \PostgreSQL\master\Data 1" e:\>"e:\PostgreSQL\master\install 1\ins@1\bin\pg_ctl.exe" start -D "e: \PostgreSQL\master\Data 1" Above commands work fine. With Regards, Amit Kapila. EnterpriseDB: http://www.enterprisedb.com
В списке pgsql-hackers по дате отправления: