From 97c72d0a46fd5234aba886211d5144a264a81b8a Mon Sep 17 00:00:00 2001 From: Michael Jerris Date: Tue, 3 Mar 2009 17:19:58 +0000 Subject: [PATCH] Mon Mar 2 11:21:17 CST 2009 Pekka Pessi * sl_utils_print.c: propagate error from fwrite() git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@12375 d0543943-73ff-0310-b7d9-9358b9ac24b2 --- libs/sofia-sip/.update | 2 +- libs/sofia-sip/libsofia-sip-ua/nta/sl_utils_print.c | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/libs/sofia-sip/.update b/libs/sofia-sip/.update index 6392e25654..d606913085 100644 --- a/libs/sofia-sip/.update +++ b/libs/sofia-sip/.update @@ -1 +1 @@ -Tue Mar 3 11:18:41 CST 2009 +Tue Mar 3 11:19:17 CST 2009 diff --git a/libs/sofia-sip/libsofia-sip-ua/nta/sl_utils_print.c b/libs/sofia-sip/libsofia-sip-ua/nta/sl_utils_print.c index 9db3f683c6..7ba8dab35f 100644 --- a/libs/sofia-sip/libsofia-sip-ua/nta/sl_utils_print.c +++ b/libs/sofia-sip/libsofia-sip-ua/nta/sl_utils_print.c @@ -218,11 +218,18 @@ issize_t sl_payload_print(FILE *stream, char const *prefix, sip_payload_t const crlf = su_strnspn(s + n, end - s - n, "\r\n"); if (prefix) fputs(prefix, stream), total += strlen(prefix); +v v v v v v v actual = fwrite(s, 1, n + crlf, stream) ; if (actual == 0) return -1; s += actual; total += actual; +************* + if (fwrite(s, 1, n + crlf, stream) < n + crlf) + return (issize_t)-1; + s += n + crlf; + total += n + crlf; +^ ^ ^ ^ ^ ^ ^ } if (crlf == 0) fputs("\n", stream), total++;