diff options
author | Patrik Nyblom <[email protected]> | 2011-07-13 16:42:31 +0200 |
---|---|---|
committer | Patrik Nyblom <[email protected]> | 2011-07-13 16:42:31 +0200 |
commit | 24cb9395bd869ebd288995cadbcf25db3198f200 (patch) | |
tree | c7c7d13099fa4e87f563bd11950d80d034c366f5 /erts/lib_src/common/erl_printf.c | |
parent | 089b8c357f5e7c96605c8f8cab4b3c856081dc39 (diff) | |
download | otp-24cb9395bd869ebd288995cadbcf25db3198f200.tar.gz otp-24cb9395bd869ebd288995cadbcf25db3198f200.tar.bz2 otp-24cb9395bd869ebd288995cadbcf25db3198f200.zip |
Correct return values from write-functions in erl_printf
Diffstat (limited to 'erts/lib_src/common/erl_printf.c')
-rw-r--r-- | erts/lib_src/common/erl_printf.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/erts/lib_src/common/erl_printf.c b/erts/lib_src/common/erl_printf.c index 72d18ab6f1..6aa4569d44 100644 --- a/erts/lib_src/common/erl_printf.c +++ b/erts/lib_src/common/erl_printf.c @@ -108,7 +108,7 @@ write_f_add_cr(void *vfp, char* buf, size_t len) if (PUTC(buf[i], (FILE *) vfp) == EOF) return get_error_result(); } - return 0; + return len; } static int @@ -126,13 +126,14 @@ write_f(void *vfp, char* buf, size_t len) #endif if (FWRITE((void *) buf, sizeof(char), len, (FILE *) vfp) != len) return get_error_result(); - return 0; + return len; } static int write_fd(void *vfdp, char* buf, size_t len) { ssize_t size; + size_t res = len; ASSERT(vfdp); while (len) { @@ -149,7 +150,7 @@ write_fd(void *vfdp, char* buf, size_t len) len -= size; } - return 0; + return res; } static int @@ -160,7 +161,7 @@ write_s(void *vwbufpp, char* bufp, size_t len) ASSERT(len > 0); memcpy((void *) *wbufpp, (void *) bufp, len); *wbufpp += len; - return 0; + return len; } @@ -182,6 +183,7 @@ write_sn(void *vwsnap, char* buf, size_t len) memcpy((void *) wsnap->buf, (void *) buf, sz); wsnap->buf += sz; wsnap->len -= sz; + return sz; } return 0; } @@ -201,7 +203,7 @@ write_ds(void *vdsbufp, char* buf, size_t len) } memcpy((void *) (dsbufp->str + dsbufp->str_len), (void *) buf, len); dsbufp->str_len += len; - return 0; + return len; } int |