diff options
Diffstat (limited to 'libffi/src/raw_api.c')
-rw-r--r-- | libffi/src/raw_api.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/libffi/src/raw_api.c b/libffi/src/raw_api.c index 55bf9ec..45cb004 100644 --- a/libffi/src/raw_api.c +++ b/libffi/src/raw_api.c @@ -202,13 +202,13 @@ void ffi_raw_call (/*@dependent@*/ ffi_cif *cif, #if FFI_CLOSURES /* base system provides closures */ static void -ffi_translate_args (ffi_cif *cif, void *ravlue, +ffi_translate_args (ffi_cif *cif, void *rvalue, void **avalue, void *user_data) { ffi_raw *raw = (ffi_raw*)alloca (ffi_raw_size (cif)); - ffi_ptrarray_to_raw (cif, avalue, raw); - ffi_raw_closure *cl = (ffi_raw_closure*)user_data; + + ffi_ptrarray_to_raw (cif, avalue, raw); (*cl->fun) (cif, rvalue, raw, cl->user_data); } @@ -226,7 +226,7 @@ ffi_prep_raw_closure (ffi_raw_closure* cl, status = ffi_prep_closure ((ffi_closure*) cl, cif, - &ffi_closure_translate, + &ffi_translate_args, (void*)cl); if (status == FFI_OK) { |