diff options
author | Azat Khuzhin <a3at.mail@gmail.com> | 2017-12-18 01:34:46 +0300 |
---|---|---|
committer | Azat Khuzhin <a3at.mail@gmail.com> | 2017-12-18 01:53:19 +0300 |
commit | 765c35d4a8a008baadc0aeb472fbff985231d7dc (patch) | |
tree | 1eda18d16d0cab86d93f0747917557d0318e1a33 | |
parent | 226b92781345213c838c729ab778dec504f39619 (diff) | |
download | libevent-765c35d4a8a008baadc0aeb472fbff985231d7dc.tar.gz |
evbuffer_add_file: munmap() correct size on mmap() failure
-rw-r--r-- | buffer.c | 4 |
1 files changed, 2 insertions, 2 deletions
@@ -2846,13 +2846,13 @@ evbuffer_add_file(struct evbuffer *outbuf, int fd, */ if (mapped == MAP_FAILED) { event_warn("%s: mmap(%d, %d, %zu) failed", - __func__, fd, 0, (size_t)(offset + length)); + __func__, fd, 0, (size_t)(length + offset)); return (-1); } chain = evbuffer_chain_new(sizeof(struct evbuffer_chain_fd)); if (chain == NULL) { event_warn("%s: out of memory", __func__); - munmap(mapped, length); + munmap(mapped, length + offset); return (-1); } |