summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/piece-table.c34
1 files changed, 20 insertions, 14 deletions
diff --git a/src/piece-table.c b/src/piece-table.c
index 21dbb1b..c170216 100644
--- a/src/piece-table.c
+++ b/src/piece-table.c
@@ -139,6 +139,26 @@ piece_buffer_create (size_t size)
return pb;
}
+void
+piece_buffer_destroy (piece_buffer *pb)
+{
+ piece_buffer *next;
+ do
+ {
+ next = pb->next;
+ free (pb);
+ pb = next;
+ }
+ while (pb != NULL);
+}
+
+void
+piece_buffer_empty (piece_buffer *pb)
+{
+ piece_buffer_destroy (pb->next);
+ pb->start -= pb->used;
+}
+
piece *
piece_buffer_bump (piece_buffer *pb)
{
@@ -154,20 +174,6 @@ piece_buffer_bump (piece_buffer *pb)
return &pb->start[pb->used++];
}
-void
-piece_buffer_destroy (piece_buffer *pb)
-{
- piece_buffer *next;
- do
- {
- next = pb->next;
- free (pb);
- pb = next;
- }
- while (pb != NULL);
-}
-
-
void
piece_table_piece_mark_empty (piece_table *pt, piece *p)