simplify cx_stream_ncopy()

Mon, 03 Apr 2023 19:48:00 +0200

author
Mike Becker <universe@uap-core.de>
date
Mon, 03 Apr 2023 19:48:00 +0200
changeset 675
765cf785b7fa
parent 674
dc514a5d42a5
child 676
d0680a23d850

simplify cx_stream_ncopy()

src/utils.c file | annotate | diff | comparison | revisions
     1.1 --- a/src/utils.c	Mon Apr 03 19:20:30 2023 +0200
     1.2 +++ b/src/utils.c	Mon Apr 03 19:48:00 2023 +0200
     1.3 @@ -84,27 +84,9 @@
     1.4          cx_write_func wfnc,
     1.5          size_t n
     1.6  ) {
     1.7 -    if (n == 0) {
     1.8 -        return 0;
     1.9 -    }
    1.10 -
    1.11 -    const size_t bufsize = CX_STREAM_COPY_BUF_SIZE;
    1.12 -    char lbuf[bufsize];
    1.13 -    size_t ncp = 0;
    1.14 -
    1.15 -    size_t r;
    1.16 -    size_t rn = bufsize > n ? n : bufsize;
    1.17 -    while ((r = rfnc(lbuf, 1, rn, src)) != 0) {
    1.18 -        r = wfnc(lbuf, 1, r, dest);
    1.19 -        ncp += r;
    1.20 -        n -= r;
    1.21 -        rn = bufsize > n ? n : bufsize;
    1.22 -        if (r == 0 || n == 0) {
    1.23 -            break;
    1.24 -        }
    1.25 -    }
    1.26 -
    1.27 -    return ncp;
    1.28 +    char buf[CX_STREAM_COPY_BUF_SIZE];
    1.29 +    return cx_stream_bncopy(src, dest, rfnc, wfnc,
    1.30 +                            buf, CX_STREAM_COPY_BUF_SIZE, n);
    1.31  }
    1.32  
    1.33  #ifndef CX_SZMUL_BUILTIN

mercurial