Re: RFA: Add 'target |' support for MinGW

Eli Zaretskii
2006-04-12T07:52:55Z

> From: Jim Blandy <jimb@codesourcery.com>
> Date: Wed, 12 Apr 2006 00:04:44 -0700
>
> src/gdb/ChangeLog:
> 2006-04-11 Jim Blandy <jimb@codesourcery.com>
>
> Add support for 'target remote |' on MinGW.
> * ser-mingw.c (struct pipe_state): New structure.
> (make_pipe_state, free_pipe_state, cleanup_pipe_state)
> (pipe_windows_open, pipe_windows_close, pipe_windows_read)
> (pipe_windows_write, pipe_wait_handle): New functions.
> (_initialize_ser_windows): Register a "pipe" interface based on
> them.

Thanks.

> + const char *err_msg
> + = pex_run (ps->pex, PEX_SEARCH | PEX_BINARY_INPUT | PEX_BINARY_OUTPUT,
> + argv[0], argv, NULL, NULL,
> + &err);
> [...]
> + DWORD bytes_read;
> + if (! ReadFile (pipeline_out, scb->buf, count, &bytes_read, NULL))
> + return -1;
> [...]
> + DWORD written;
> + if (! WriteFile (pipeline_in, buf, count, &written, NULL))
> + return -1;

Do we really want binary I/O in _all_ situations? Can it be that,
depending on the command on the other side of the pipe, someone would
like the CR characters to be stripped from the EOLs in the incoming
stuff? The way you wrote it, AFAICS, binary I/O is always used, no
matter what.