I have not yet succeeded in turning this behaviour off (_setmode() didn't seem to affect it). If we can't find a way to turn it off, the only solution short of abandoning its use on Windows that I can think of is to translate LF on input to something unlikely like 0x1C and then translate it back when we read it from the pipe.
Did you _setmode() the pipe, _setmode() stderr, or both? (And did you try before or after calling dup2()?).

It looks like the Win CRT implementation of dup2() copues the "mode" from the pipe that you've created into stderr.
Sorry, I was looking at the wrong chunk of code in syslogger.c. Why are you calling _open_osfhandle() with O_TEXT? That looks suspicious giving the problem that you are seeing with CR -> CR/LF translation.

         -- Korry

---------------------------(end of broadcast)---------------------------
TIP 3: Have you checked our extensive FAQ?

              http://www.postgresql.org/docs/faq

Reply via email to