Thread (8 messages) 8 messages, 4 authors, 2022-08-11

Re: [PATCH 2/2] builtin/cat-file.c: support NUL-delimited input with `-z`

From: Taylor Blau <hidden>
Date: 2022-07-25 23:39:20

On Fri, Jul 22, 2022 at 04:41:54PM -0700, Chris Torek wrote:
quoted
It's tempting to think that we could use `strbuf_getwholeline()` and
specify either `\n` or `\0` as the terminating character. ...
How about:

    int (*get)(struct strbuf *, FILE *);
    get = opt->nul_terminated ? strbuf_getline_nul : strbuf_getline;
    while (get(&buf, stdin) != EOF)

or similar?
I thought about it, but it seemed cleaner to lift the ternary out to
capture the result, too, leading to the if/else-statement I sent in the
patch above.

If we wanted to change it, I'd probably suggest a more general-purpose
strbuf function that implemented this behavior through a single call.
But it sounds like supporting the carriage return character was a
mistake from the beginning, which simplifies this direction quite a bit,
anyways.

Thanks,
Taylor
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help