aboutsummaryrefslogtreecommitdiff
path: root/src/template.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/template.c')
-rw-r--r--src/template.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/template.c b/src/template.c
index a819aba..a24736f 100644
--- a/src/template.c
+++ b/src/template.c
@@ -38,6 +38,19 @@ template_create(void)
void
template_delete(template_t *template)
{
+ for (size_t i = 0; i < template->components->size; i++) {
+ directive_t *directive = list_get(template->components, i);
+ switch (directive->type) {
+ case _RAW:
+ case CONTENT:
+ free(directive->operands);
+ break;
+
+ default:
+ break;
+ }
+ }
+
list_delete(template->components);
free(template);
}