summaryrefslogtreecommitdiff
path: root/src/piece-table.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/piece-table.c')
-rw-r--r--src/piece-table.c15
1 files changed, 10 insertions, 5 deletions
diff --git a/src/piece-table.c b/src/piece-table.c
index 7ca95f1..85966f7 100644
--- a/src/piece-table.c
+++ b/src/piece-table.c
@@ -363,18 +363,16 @@ piece_table_delete(piece_table *pt, size_t pos, size_t len)
pt->length -= len;
}
-
piece_table *
-piece_table_create (char *orig)
+piece_table_create_from (char *orig, size_t size)
{
piece *original;
piece_table * pt = malloc (sizeof (*pt));
- size_t len = strlen(orig); /* obtain from the outside? */
- pt->length = len;
+ pt->length = size;
/* Original buffer */
text_buffer_init(&pt->orig);
- text_buffer_fill(&pt->orig, orig, len);
+ text_buffer_fill(&pt->orig, orig, size);
/* Add buffer */
text_buffer_init(&pt->add);
@@ -397,6 +395,13 @@ piece_table_create (char *orig)
return pt;
}
+piece_table *
+piece_table_create (char *orig, size_t size)
+{
+ return piece_table_create_from ("", 0);
+}
+
+
void
piece_table_destroy (piece_table *pt)
{