Does anyone know why, in src/comerr/com_err.c, in default_com_err_proc(),
the code does the following:

    putc('\n', stderr);
    /* should do this only on a tty in raw mode */
    putc('\r', stderr);
    fflush(stderr);

When you run a command which generates both normal output AND errors, you
get a mix of lines which end in a plain newline (\n) and lines which end in
both a plain newline AND a carriage return (\n\r).   When parsing that
output, code that assumes a default IRS of just \n gives you some lines
which start with the \r, and this is a potential headache for anything that
tries to parse it.

I will have to workaround this in the AFS::Command code that parses pts
output, and deal with it, but going forward, I'd really like to rip out the
extra \r.

Is there a valid reason for leaving this in place?  If not, I'll nuke it....

Reply via email to