diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2017-06-25 06:32:19 -0700 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2017-06-25 06:32:19 -0700 |
commit | fe28f0759672844ae50eb8375af11fd791dc4de1 (patch) | |
tree | 75cc9d62ae2b7904e56957b492ce5cf02e481b33 | |
parent | bd4f590287953ab904a014764790feccb88becc9 (diff) | |
download | txr-fe28f0759672844ae50eb8375af11fd791dc4de1.tar.gz txr-fe28f0759672844ae50eb8375af11fd791dc4de1.tar.bz2 txr-fe28f0759672844ae50eb8375af11fd791dc4de1.zip |
ffi: fix leak in new union code.
* ffi.c (make_ffi_type_union): Create cobj with correct
cobj_ops structure: ffi_type_struct_ops, not
ffi_type_enum_ops.
-rw-r--r-- | ffi.c | 2 |
1 files changed, 1 insertions, 1 deletions
@@ -2942,7 +2942,7 @@ static val make_ffi_type_union(val syntax, val lisp_type, cnum nmemb = c_num(length(types)), i; struct smemb *memb = coerce(struct smemb *, chk_calloc(nmemb, sizeof *memb)); - val obj = cobj(coerce(mem_t *, tft), ffi_type_s, &ffi_type_enum_ops); + val obj = cobj(coerce(mem_t *, tft), ffi_type_s, &ffi_type_struct_ops); ucnum most_align = 0; ucnum biggest_size = 0; const unsigned bits_int = 8 * sizeof(int); |