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

This commit is contained in:
Christian Grothoff committed 2013-05-15 20:04:11 +00:00
1 parent 76929295b7
commit a39c6c5206
2 files changed
+15 -11

No files matched your search

+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)