X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;ds=sidebyside;f=src%2Flibffi.c;h=34a15987a729143b2272c0bafd64f4b53154f090;hb=a6ffb2bfbf83ef3511cc356bd931d460feabe7a2;hp=38fa09615a0b79c63a1444802d4f4ce6341c7b6a;hpb=207ff7bc85e967235f0ad1ffbf47c0f85f375063;p=m6w6%2Fext-psi diff --git a/src/libffi.c b/src/libffi.c index 38fa096..34a1598 100644 --- a/src/libffi.c +++ b/src/libffi.c @@ -224,13 +224,13 @@ static void psi_ffi_handler(ffi_cif *_sig, void *_result, void **_args, void *_d ffi_call(&data->signature, FFI_FN(data->impl->decl->dlptr), &ret_val, arg_prm); - psi_do_return(data->impl, &ret_val, *(zval **)_args[1]); + psi_do_return(*(zval **)_args[1], data->impl->stmts->ret.list[0], &ret_val); for (i = 0; i < data->impl->stmts->set.count; ++i) { set_stmt *set = data->impl->stmts->set.list[i]; if (set->arg->_zv) { - psi_do_set(set->arg->_zv, set->val->func, set->val->vars); + psi_do_set(set->arg->_zv, set->val); } }