From 6e605c845b366fb983940df8525a44515119966d Mon Sep 17 00:00:00 2001 From: Howard Chu Date: Wed, 16 Dec 2020 19:04:59 +0000 Subject: [PATCH] No-op if not all required plugin hooks are available. --- ld/libdep_plugin.c | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/ld/libdep_plugin.c b/ld/libdep_plugin.c index 37ad7c7f97..42b7844c9c 100644 --- a/ld/libdep_plugin.c +++ b/ld/libdep_plugin.c @@ -339,17 +339,13 @@ onload (struct ld_plugin_tv *tv) while ((tv++)->tv_tag != LDPT_NULL); /* Register hooks. */ - if (!tv_register_claim_file) + if (tv_register_claim_file && tv_register_all_symbols_read && + tv_register_cleanup) { - TV_MESSAGE (LDPL_FATAL, "No register_claim_file hook"); - fflush (NULL); - return LDPS_ERR; + (*tv_register_claim_file) (onclaim_file); + (*tv_register_all_symbols_read) (onall_symbols_read); + (*tv_register_cleanup) (oncleanup); } - (*tv_register_claim_file) (onclaim_file); - if (tv_register_all_symbols_read) - (*tv_register_all_symbols_read) (onall_symbols_read); - if (tv_register_cleanup) - (*tv_register_cleanup) (oncleanup); fflush (NULL); return LDPS_OK; } -- 2.25.1