[asterisk-commits] rmudgett: branch 12 r412924 - in /branches/12: ./ main/http.c

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Wed Apr 23 13:00:43 CDT 2014


Author: rmudgett
Date: Wed Apr 23 13:00:40 2014
New Revision: 412924

URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=412924
Log:
http: Fix spurious ERROR message in responses with no content.

Backport -r411687 and fix the fix because content_length is the length of
out plus the length of the file controlled by fd.

When a response has an out content length of 0, fwrite would be called to
write a buffer with no data in it.  This resulted in the following classic
error message:

  [Apr  3 11:49:17] ERROR[26421] http.c: fwrite() failed: Success

This patch makes it so that we only attempt to write the content of out if
the out string is non-zero.
........

Merged revisions 412922 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........

Merged revisions 412923 from http://svn.asterisk.org/svn/asterisk/branches/11

Modified:
    branches/12/   (props changed)
    branches/12/main/http.c

Propchange: branches/12/
------------------------------------------------------------------------------
Binary property 'branch-11-merged' - no diff available.

Modified: branches/12/main/http.c
URL: http://svnview.digium.com/svn/asterisk/branches/12/main/http.c?view=diff&rev=412924&r1=412923&r2=412924
==============================================================================
--- branches/12/main/http.c (original)
+++ branches/12/main/http.c Wed Apr 23 13:00:40 2014
@@ -443,8 +443,8 @@
 
 	/* send content */
 	if (method != AST_HTTP_HEAD || status_code >= 400) {
-		if (content_length) {
-			if (fwrite(ast_str_buffer(out), content_length, 1, ser->f) != 1) {
+		if (out && ast_str_strlen(out)) {
+			if (fwrite(ast_str_buffer(out), ast_str_strlen(out), 1, ser->f) != 1) {
 				ast_log(LOG_ERROR, "fwrite() failed: %s\n", strerror(errno));
 			}
 		}




More information about the asterisk-commits mailing list