-2nd attempt to fix #2859, this time things look much better

This commit is contained in:
Christian Grothoff
2013-05-15 20:04:11 +00:00
parent 76929295b7
commit a39c6c5206
2 changed files with 15 additions and 11 deletions
+1 -1
View File
@@ -1,4 +1,4 @@
Mon May 6 12:49:01 CEST 2013
Mon May 15 12:49:01 CEST 2013
Fixing #2859. -CG
Sun May 5 21:44:08 CEST 2013
+14 -10
View File
@@ -2034,16 +2034,6 @@ MHD_connection_handle_write (struct MHD_Connection *connection)
pthread_mutex_unlock (&response->mutex);
break;
}
#if 0
if (response->data_size == connection->response_write_position - response->data_start)
{
/* nothing to transmit, move on */
if (response->crc != NULL)
pthread_mutex_unlock (&response->mutex);
connection->state = MHD_CONNECTION_BODY_SENT;
return MHD_YES;
}
#endif
ret = connection->send_cls (connection,
&response->data
[connection->response_write_position
@@ -2359,6 +2349,13 @@ MHD_connection_handle_idle (struct MHD_Connection *connection)
case MHD_CONNECTION_NORMAL_BODY_UNREADY:
if (connection->response->crc != NULL)
pthread_mutex_lock (&connection->response->mutex);
if (0 == connection->response->total_size)
{
if (connection->response->crc != NULL)
pthread_mutex_unlock (&connection->response->mutex);
connection->state = MHD_CONNECTION_BODY_SENT;
continue;
}
if (MHD_YES == try_ready_normal_body (connection))
{
if (connection->response->crc != NULL)
@@ -2376,6 +2373,13 @@ MHD_connection_handle_idle (struct MHD_Connection *connection)
case MHD_CONNECTION_CHUNKED_BODY_UNREADY:
if (connection->response->crc != NULL)
pthread_mutex_lock (&connection->response->mutex);
if (0 == connection->response->total_size)
{
if (connection->response->crc != NULL)
pthread_mutex_unlock (&connection->response->mutex);
connection->state = MHD_CONNECTION_BODY_SENT;
continue;
}
if (MHD_YES == try_ready_chunked_body (connection))
{
if (connection->response->crc != NULL)