aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/surface/byte_buffer_queue.c
diff options
context:
space:
mode:
authorGravatar Craig Tiller <craig.tiller@gmail.com>2015-02-05 17:04:51 -0800
committerGravatar Craig Tiller <craig.tiller@gmail.com>2015-02-05 17:04:51 -0800
commit3054756462f41e6811d7866bd231982f0613279f (patch)
tree5fed6688a3a7956840e1b493ed89f4b4652ac96c /src/core/surface/byte_buffer_queue.c
parent16c5032fdb487d744f26721a876b0f03e8b566f9 (diff)
Fix in-flight cancellations
Diffstat (limited to 'src/core/surface/byte_buffer_queue.c')
-rw-r--r--src/core/surface/byte_buffer_queue.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/core/surface/byte_buffer_queue.c b/src/core/surface/byte_buffer_queue.c
index 9709a665ba..aab7fd2ffe 100644
--- a/src/core/surface/byte_buffer_queue.c
+++ b/src/core/surface/byte_buffer_queue.c
@@ -65,6 +65,13 @@ void grpc_bbq_push(grpc_byte_buffer_queue *q, grpc_byte_buffer *buffer) {
bba_push(&q->filling, buffer);
}
+void grpc_bbq_flush(grpc_byte_buffer_queue *q) {
+ grpc_byte_buffer *bb;
+ while ((bb = grpc_bbq_pop(q))) {
+ grpc_byte_buffer_destroy(bb);
+ }
+}
+
grpc_byte_buffer *grpc_bbq_pop(grpc_byte_buffer_queue *q) {
grpc_bbq_array temp_array;