From: Nick Porter Date: Wed, 12 Nov 2025 20:52:38 +0000 (+0000) Subject: Correct return handling X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=ebabc798ddb88a86e6b12eaa9bad02a065c7ced0;p=thirdparty%2Ffreeradius-server.git Correct return handling Wrapping the `ret = module...` assignment in `unlikely()` resulted in incorrect values in `ret` --- diff --git a/src/modules/rlm_cache/rlm_cache.c b/src/modules/rlm_cache/rlm_cache.c index bbf24f00795..8a9057cfccd 100644 --- a/src/modules/rlm_cache/rlm_cache.c +++ b/src/modules/rlm_cache/rlm_cache.c @@ -111,7 +111,8 @@ int submodule_parse(TALLOC_CTX *ctx, void *out, void *parent, CONF_ITEM *ci, con module_instance_t *mi; int ret; - if (unlikely(ret = module_rlm_submodule_parse(ctx, out, parent, ci, rule) < 0)) return ret; + ret = module_rlm_submodule_parse(ctx, out, parent, ci, rule); + if (unlikely(ret < 0)) return ret; mi = talloc_get_type_abort(*((void **)out), module_instance_t); inst->driver = (rlm_cache_driver_t const *)mi->exported; /* Public symbol exported by the submodule */