[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r36228 - libmicrohttpd/src/microhttpd
From: |
gnunet |
Subject: |
[GNUnet-SVN] r36228 - libmicrohttpd/src/microhttpd |
Date: |
Sat, 8 Aug 2015 14:29:34 +0200 |
Author: Karlson2k
Date: 2015-08-08 14:29:34 +0200 (Sat, 08 Aug 2015)
New Revision: 36228
Modified:
libmicrohttpd/src/microhttpd/connection.c
Log:
connection.c: try_ready_chunked_body(): fix VS compiler warning, small
refactoring for readability
Modified: libmicrohttpd/src/microhttpd/connection.c
===================================================================
--- libmicrohttpd/src/microhttpd/connection.c 2015-08-08 12:29:28 UTC (rev
36227)
+++ libmicrohttpd/src/microhttpd/connection.c 2015-08-08 12:29:34 UTC (rev
36228)
@@ -411,7 +411,7 @@
response = connection->response;
if (0 == connection->write_buffer_size)
{
- size = connection->daemon->pool_size;
+ size = MHD_MIN(connection->daemon->pool_size, 2 * (0xFFFFFF +
sizeof(cbuf) + 2));
do
{
size /= 2;
@@ -433,17 +433,18 @@
ret = 0; /* response must be empty, don't bother calling crc */
else if ( (response->data_start <=
connection->response_write_position) &&
- (response->data_size + response->data_start >
+ (response->data_start + response->data_size >
connection->response_write_position) )
{
+ /* difference between response_write_position and data_start is less
+ than data_size which is size_t type, no need to check for overflow */
+ const size_t data_write_offset =
(size_t)(connection->response_write_position - response->data_start);
/* buffer already ready, use what is there for the chunk */
- ret = response->data_size + response->data_start -
connection->response_write_position;
- if ( (ret > 0) &&
- (((size_t) ret) > connection->write_buffer_size - sizeof (cbuf) -
2) )
+ ret = response->data_size - data_write_offset;
+ if ( ((size_t) ret) > connection->write_buffer_size - sizeof (cbuf) - 2 )
ret = connection->write_buffer_size - sizeof (cbuf) - 2;
memcpy (&connection->write_buffer[sizeof (cbuf)],
- &response->data[connection->response_write_position -
response->data_start],
- ret);
+ &response->data[data_write_offset], ret);
}
else
{
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r36228 - libmicrohttpd/src/microhttpd,
gnunet <=