summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--buffer.c3
-rw-r--r--evbuffer-internal.h8
-rw-r--r--include/event2/buffer.h3
3 files changed, 6 insertions, 8 deletions
diff --git a/buffer.c b/buffer.c
index be9c7ec9..c748dab2 100644
--- a/buffer.c
+++ b/buffer.c
@@ -333,6 +333,7 @@ evbuffer_run_callbacks(struct evbuffer *buffer, int running_deferred)
struct evbuffer_cb_info info;
size_t new_size;
uint32_t mask, masked_val;
+ int clear = 1;
if (running_deferred) {
mask = EVBUFFER_CB_NODEFER|EVBUFFER_CB_ENABLED;
@@ -340,6 +341,8 @@ evbuffer_run_callbacks(struct evbuffer *buffer, int running_deferred)
} else if (buffer->deferred_cbs) {
mask = EVBUFFER_CB_NODEFER|EVBUFFER_CB_ENABLED;
masked_val = EVBUFFER_CB_NODEFER|EVBUFFER_CB_ENABLED;
+/* Don't zero-out n_add/n_del, since */
+ clear = 0;
} else {
mask = EVBUFFER_CB_ENABLED;
masked_val = EVBUFFER_CB_ENABLED;
diff --git a/evbuffer-internal.h b/evbuffer-internal.h
index 7e08ee9b..99dde3ce 100644
--- a/evbuffer-internal.h
+++ b/evbuffer-internal.h
@@ -36,6 +36,9 @@ extern "C" {
#include "util-internal.h"
#include "defer-internal.h"
+/* Experimental cb flag: "never deferred" */
+#define EVBUFFER_CB_NODEFER 2
+
#ifdef WIN32
#include <winsock2.h>
#endif
@@ -59,11 +62,6 @@ struct evbuffer_cb_entry {
void *cbarg;
/** Currently set flags on this callback. */
ev_uint32_t flags;
-#if 0
- /** Size of the evbuffer before this callback was suspended, or 0
- if this callback is not suspended. */
- size_t size_before_suspend;
-#endif
};
struct bufferevent;
diff --git a/include/event2/buffer.h b/include/event2/buffer.h
index 0fb6dffd..2a8e8378 100644
--- a/include/event2/buffer.h
+++ b/include/event2/buffer.h
@@ -610,9 +610,6 @@ int evbuffer_remove_cb(struct evbuffer *buffer, evbuffer_cb_func cb, void *cbarg
* should not be invoked. */
#define EVBUFFER_CB_ENABLED 1
-/* Experimental cb flag: "never deferred" */
-#define EVBUFFER_CB_NODEFER 2
-
/** Change the flags that are set for a callback on a buffer by adding more.
@param buffer the evbuffer that the callback is watching.