aboutsummaryrefslogtreecommitdiffstats
path: root/src/libs6/ftrigr_end.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/libs6/ftrigr_end.c')
-rw-r--r--src/libs6/ftrigr_end.c22
1 files changed, 14 insertions, 8 deletions
diff --git a/src/libs6/ftrigr_end.c b/src/libs6/ftrigr_end.c
index 555053f..5c0eb13 100644
--- a/src/libs6/ftrigr_end.c
+++ b/src/libs6/ftrigr_end.c
@@ -1,15 +1,21 @@
/* ISC license. */
-#include <stdint.h>
+#include <skalibs/stralloc.h>
#include <skalibs/genalloc.h>
-#include <skalibs/gensetdyn.h>
-#include <skalibs/textclient.h>
+#include <skalibs/sassclient.h>
+
#include <s6/ftrigr.h>
+#include "ftrigr-internal.h"
+
+static void ftrigr_data_free (void *x)
+{
+ ftrigr_data *p = x ;
+ stralloc_free(&p->sa) ;
+}
-void ftrigr_end (ftrigr_ref a)
+void ftrigr_end (ftrigr *a)
{
- gensetdyn_free(&a->data) ;
- genalloc_free(uint16_t, &a->list) ;
- textclient_end(&a->connection) ;
- *a = ftrigr_zero ;
+ sassclient_end(&a->client) ;
+ a->data.len = a->data.a ;
+ genalloc_deepfree(ftrigr_data, &a->data, &ftrigr_data_free) ;
}