diff --git a/girepository/girffi.c b/girepository/girffi.c index ffdcc1df1..49844e0e3 100644 --- a/girepository/girffi.c +++ b/girepository/girffi.c @@ -445,60 +445,3 @@ g_callable_info_destroy_closure (GICallableInfo *callable_info, g_free (wrapper->ffi_closure.cif->arg_types); ffi_closure_free (wrapper->writable_self); } - -/** - * g_callable_info_prepare_closure: - * @callable_info: a callable info from a typelib - * @cif: a ffi_cif structure - * @callback: the ffi callback - * @user_data: data to be passed into the callback - * - * Prepares a callback for ffi invocation. - * - * Deprecated: 1.72: Use g_callable_info_create_closure() instead - * - * Returns: the native address of the closure or `NULL` on error. The return value - * should be freed by calling g_callable_info_free_closure(). - */ -ffi_closure * -g_callable_info_prepare_closure (GICallableInfo *callable_info, - ffi_cif *cif, - GIFFIClosureCallback callback, - gpointer user_data) -{ - ffi_closure * closure; - - closure = g_callable_info_create_closure (callable_info, cif, callback, user_data); - if (!closure) - { - return NULL; - } - - /* Return the native pointer which, on some systems and ffi versions without static exec trampolines, - * points to the same underlying memory as closure, but via an executable-non-writable mapping. - * Deprecated, and kept for backwards compatibility only. Risks segfaults on freeing the closure. - */ - return (ffi_closure *) g_callable_info_get_closure_native_address(callable_info, closure); -} - -/** - * g_callable_info_free_closure: - * @callable_info: a callable info from a typelib - * @closure: ffi closure - * - * Deprecated: 1.72: Use g_callable_info_destroy_closure() instead, in - * conjunction with g_callable_info_create_closure(). - * - * Should free a ffi_closure returned from g_callable_info_prepare_closure(), - * which may cause a segfault because the native address is returned instead of - * the closure address. May do nothing and leak memory instead of freeing to - * avoid segfaults. - */ -void -g_callable_info_free_closure (GICallableInfo *callable_info, - ffi_closure *closure) -{ -#ifdef LEGACY_GIRFFI_FREE - g_callable_info_destroy_closure(callable_info, closure); -#endif -} diff --git a/girepository/girffi.h b/girepository/girffi.h index 1360bd241..8a1ebd7cd 100644 --- a/girepository/girffi.h +++ b/girepository/girffi.h @@ -101,17 +101,6 @@ GI_AVAILABLE_IN_ALL void g_function_invoker_destroy (GIFunctionInvoker *invoker); -GI_DEPRECATED_IN_2_72_FOR(g_callable_info_create_closure) -ffi_closure * g_callable_info_prepare_closure (GICallableInfo *callable_info, - ffi_cif *cif, - GIFFIClosureCallback callback, - gpointer user_data); - -GI_DEPRECATED_IN_2_72_FOR(g_callable_info_destroy_closure) -void g_callable_info_free_closure (GICallableInfo *callable_info, - ffi_closure *closure); - - GI_AVAILABLE_IN_2_72 ffi_closure * g_callable_info_create_closure (GICallableInfo *callable_info, ffi_cif *cif,