]> granicus.if.org Git - libevent/commitdiff
buffer: make evbuffer_prepend() of zero-length array no-op
authorAzat Khuzhin <azat@libevent.org>
Sun, 3 Mar 2019 16:03:29 +0000 (19:03 +0300)
committerAzat Khuzhin <azat@libevent.org>
Sun, 3 Mar 2019 16:05:54 +0000 (19:05 +0300)
Refs: #774

buffer.c

index 8e947892f7df7605400c5b9a9b66a133f9655181..690154bffee69d6ba937161e203bb1bd4b846f60 100644 (file)
--- a/buffer.c
+++ b/buffer.c
@@ -1829,6 +1829,10 @@ evbuffer_prepend(struct evbuffer *buf, const void *data, size_t datlen)
 
        EVBUFFER_LOCK(buf);
 
+       if (datlen == 0) {
+               result = 0;
+               goto done;
+       }
        if (buf->freeze_start) {
                goto done;
        }