From 040cfc89b9a110cd0fb2abdcd35e8215b4a71f60 Mon Sep 17 00:00:00 2001 From: Jeremy Evans Date: Sun, 8 Mar 2020 17:47:48 -0700 Subject: [PATCH] Do not set USE_FFI_CLOSURE_ALLOC=1 in fiddle on OpenBSD On OpenBSD, USE_FFI_CLOSURE_ALLOC was always set to 0 previously. In 633a1f15d8228236094ddee12e4e169d655ec49e, the code was modified in a way that it ended up being set to 1 on OpenBSD. However, that results in SIGABRT when running make test-all, inside ffi_closure_free. Setting USE_FFI_CLOSURE_ALLOC back to 0 fixes the issue. --- ext/fiddle/closure.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/ext/fiddle/closure.c b/ext/fiddle/closure.c index 2044c836ea0f..40cee55e9a9e 100644 --- a/ext/fiddle/closure.c +++ b/ext/fiddle/closure.c @@ -13,6 +13,10 @@ typedef struct { ffi_type **argv; } fiddle_closure; +#if defined(__OpenBSD__) +# define USE_FFI_CLOSURE_ALLOC 0 +#endif + #if defined(USE_FFI_CLOSURE_ALLOC) #elif !defined(HAVE_FFI_CLOSURE_ALLOC) # define USE_FFI_CLOSURE_ALLOC 0