mirror of
https://github.com/cuberite/libevent.git
synced 2025-09-15 07:15:03 -04:00
Merge remote-tracking branch 'origin/patches-2.0'
This commit is contained in:
commit
9d6acdc551
2
buffer.c
2
buffer.c
@ -2485,9 +2485,11 @@ evbuffer_write_atmost(struct evbuffer *buffer, evutil_socket_t fd,
|
||||
/* XXX(nickm) Don't disable this code until we know if
|
||||
* the WSARecv code above works. */
|
||||
void *p = evbuffer_pullup(buffer, howmuch);
|
||||
EVUTIL_ASSERT(p || !howmuch);
|
||||
n = send(fd, p, howmuch, 0);
|
||||
#else
|
||||
void *p = evbuffer_pullup(buffer, howmuch);
|
||||
EVUTIL_ASSERT(p || !howmuch);
|
||||
n = write(fd, p, howmuch);
|
||||
#endif
|
||||
#ifdef USE_SENDFILE
|
||||
|
@ -207,6 +207,8 @@ decode_tag_internal(ev_uint32_t *ptag, struct evbuffer *evbuf, int dodrain)
|
||||
*/
|
||||
data = evbuffer_pullup(
|
||||
evbuf, len < sizeof(number) + 1 ? len : sizeof(number) + 1);
|
||||
if (!data)
|
||||
return (-1);
|
||||
|
||||
while (count++ < len) {
|
||||
ev_uint8_t lower = *data++;
|
||||
@ -320,6 +322,8 @@ do { \
|
||||
\
|
||||
/* XXX(niels): faster? */ \
|
||||
data = evbuffer_pullup(evbuf, offset + 1) + offset; \
|
||||
if (!data) \
|
||||
return (-1); \
|
||||
\
|
||||
nibbles = ((data[0] & 0xf0) >> 4) + 1; \
|
||||
if (nibbles > maxnibbles || (nibbles >> 1) + 1 > len) \
|
||||
@ -327,6 +331,8 @@ do { \
|
||||
len = (nibbles >> 1) + 1; \
|
||||
\
|
||||
data = evbuffer_pullup(evbuf, offset + len) + offset; \
|
||||
if (!data) \
|
||||
return (-1); \
|
||||
\
|
||||
while (nibbles > 0) { \
|
||||
number <<= 4; \
|
||||
|
Loading…
x
Reference in New Issue
Block a user