diff --git a/daemon/bencode.c b/daemon/bencode.c index 7e4a716cc..649e30fd0 100644 --- a/daemon/bencode.c +++ b/daemon/bencode.c @@ -112,8 +112,12 @@ alloc: } void bencode_buffer_free(bencode_buffer_t *buf) { + struct __bencode_free_list *fl; struct __bencode_buffer_piece *piece, *next; + for (fl = buf->free_list; fl; fl = fl->next) + BENCODE_FREE(fl->ptr); + for (piece = buf->pieces; piece; piece = next) { next = piece->next; BENCODE_FREE(piece);