[Tarantool-patches] [PATCH v20 2/7] box/func: module_reload -- drop redundant argument
Serge Petrenko
sergepetrenko at tarantool.org
Mon Apr 5 13:23:03 MSK 2021
02.04.2021 15:34, Cyrill Gorcunov пишет:
> The only purpose of the module argument is to
> notify the caller that the module doesn't exist.
> Lets simply the code and drop this argument.
>
> Part-of #4642
>
> Signed-off-by: Cyrill Gorcunov <gorcunov at gmail.com>
> ---
Thanks for the patch! LGTM.
> src/box/call.c | 9 +--------
> src/box/func.c | 7 +++----
> src/box/func.h | 3 +--
> 3 files changed, 5 insertions(+), 14 deletions(-)
>
> diff --git a/src/box/call.c b/src/box/call.c
> index 9c291260e..7839e1f3e 100644
> --- a/src/box/call.c
> +++ b/src/box/call.c
> @@ -128,14 +128,7 @@ box_module_reload(const char *name)
> user->def->name);
> return -1;
> }
> - struct module *module = NULL;
> - if (module_reload(name, name + strlen(name), &module) == 0) {
> - if (module != NULL)
> - return 0;
> - else
> - diag_set(ClientError, ER_NO_SUCH_MODULE, name);
> - }
> - return -1;
> + return module_reload(name, name + strlen(name));
> }
>
> int
> diff --git a/src/box/func.c b/src/box/func.c
> index 9909cee45..233696a4f 100644
> --- a/src/box/func.c
> +++ b/src/box/func.c
> @@ -372,13 +372,13 @@ module_sym(struct module *module, const char *name)
> }
>
> int
> -module_reload(const char *package, const char *package_end, struct module **module)
> +module_reload(const char *package, const char *package_end)
> {
> struct module *old_module = module_cache_find(package, package_end);
> if (old_module == NULL) {
> /* Module wasn't loaded - do nothing. */
> - *module = NULL;
> - return 0;
> + diag_set(ClientError, ER_NO_SUCH_MODULE, package);
> + return -1;
> }
>
> struct module *new_module = module_load(package, package_end);
> @@ -399,7 +399,6 @@ module_reload(const char *package, const char *package_end, struct module **modu
> if (module_cache_put(new_module) != 0)
> goto restore;
> module_gc(old_module);
> - *module = new_module;
> return 0;
> restore:
> /*
> diff --git a/src/box/func.h b/src/box/func.h
> index 581e468cb..0a08fa465 100644
> --- a/src/box/func.h
> +++ b/src/box/func.h
> @@ -113,12 +113,11 @@ func_call(struct func *func, struct port *args, struct port *ret);
> *
> * @param package name begin pointer.
> * @param package_end package_end name end pointer.
> - * @param[out] module a pointer to store module object on success.
> * @retval -1 on error.
> * @retval 0 on success.
> */
> int
> -module_reload(const char *package, const char *package_end, struct module **module);
> +module_reload(const char *package, const char *package_end);
>
> #if defined(__cplusplus)
> } /* extern "C" */
--
Serge Petrenko
More information about the Tarantool-patches
mailing list