Basic working version without persistent storage

This commit is contained in:
Jef Roosens 2022-11-15 21:12:08 +01:00
parent cae62ce7d2
commit a2fcbb4224
Signed by: Jef Roosens
GPG key ID: B75D4F293C7052DB
8 changed files with 83 additions and 25 deletions

View file

@ -30,6 +30,7 @@ typedef struct ttnode {
TernaryTrieInnerNode *root;
char *string;
} ptr;
char *payload;
// What type of node this is
// 0: regular non-representing node
// 1: regular representing node
@ -100,6 +101,10 @@ void ttnode_free(TernaryTrieNode *node) {
ttinode_free_cascade(node->ptr.root);
}
if (node->payload != NULL) {
free(node->payload);
}
free(node);
}
@ -213,8 +218,11 @@ void ttnode_split(TernaryTrieNode *node) {
new_node->type = 1;
}
new_node->payload = node->payload;
node->type = 0;
node->size = 0;
node->payload = NULL;
free(node->ptr.string);
node->ptr.string = NULL;