X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=blobdiff_plain;f=chunk_queue.c;h=e8ea07d93ff1cc10cfe1888ce283630505642a24;hp=fa31718590dd73fad6f034d69ce2a8d7fc299e86;hb=b0fe6d882dd35b01360a66e130d6714aff7b6a0d;hpb=002731cd3938f3be6b71651e56c062af1adcdec0 diff --git a/chunk_queue.c b/chunk_queue.c index fa317185..e8ea07d9 100644 --- a/chunk_queue.c +++ b/chunk_queue.c @@ -1,11 +1,13 @@ /* - * Copyright (C) 2007-2009 Andre Noll + * Copyright (C) 2007-2010 Andre Noll * * Licensed under the GPL v2. For licencing details see COPYING. */ /** \file chunk_queue.c Queuing functions for paraslash senders. */ +#include + #include "para.h" #include "list.h" #include "afh.h" @@ -80,12 +82,14 @@ struct queued_chunk *cq_peek(struct chunk_queue *cq) /** * Remove the current chunk from the queue. * - * \param cq The chunk to remove. + * \param cq The queue to remove from. */ void cq_dequeue(struct chunk_queue *cq) { struct queued_chunk *qc = cq_peek(cq); assert(qc); + assert(cq->num_pending >= qc->num_bytes); + cq->num_pending -= qc->num_bytes; list_del(&qc->node); free(qc); }