free_ref & free_me in PgfMarshaller too

This commit is contained in:
krangelov
2021-08-14 20:08:04 +02:00
parent 9db352b2bb
commit 8b8028bdfe
3 changed files with 22 additions and 3 deletions

View File

@@ -2,6 +2,15 @@
#include <pgf/pgf.h>
#include <stdlib.h>
void hs_free_marshaller(PgfMarshaller *marshaller)
{
hs_free_fun_ptr((HsFunPtr) marshaller->vtbl->match_lit);
hs_free_fun_ptr((HsFunPtr) marshaller->vtbl->match_expr);
hs_free_fun_ptr((HsFunPtr) marshaller->vtbl->match_type);
free(marshaller->vtbl);
free(marshaller);
}
void hs_free_unmarshaller(PgfUnmarshaller *unmarshaller)
{
hs_free_fun_ptr((HsFunPtr) unmarshaller->vtbl->eabs);
@@ -20,7 +29,7 @@ void hs_free_unmarshaller(PgfUnmarshaller *unmarshaller)
free(unmarshaller);
}
void hs_free_reference(PgfUnmarshaller *unmarshaller, uintptr_t ref)
void hs_free_reference(void *self, uintptr_t ref)
{
hs_free_stable_ptr((HsStablePtr) ref);
}