diff --git a/inc/lektor/config.h b/inc/lektor/config.h index 5db459f178c1983f23810a844a5423535f1f81a3..051e1e617104f85c86da00f2e5dd222bc2b6ae3b 100644 --- a/inc/lektor/config.h +++ b/inc/lektor/config.h @@ -46,7 +46,6 @@ void config_default_file(char *dest, size_t len); #define env_get getenv /* Handle everything for a hook */ -void config_handle_hook(volatile sqlite3 *db, const char *hook_name, int arg_count, ...); -#define HANDLE_HOOK(db, n, ...) config_handle_hook(db, n, GET_VA_COUNT(__VA_ARGS__), __VA_ARGS__) +void config_handle_hook(volatile sqlite3 *db, const char *hook_name); #endif /* __LKT_CONFIG_H__ */ diff --git a/src/base/commands.c b/src/base/commands.c index c029d911daa0b2b136fc265592e57251f493f498..cb0808dd0b67d09af388c956ef0ac8244835875b 100644 --- a/src/base/commands.c +++ b/src/base/commands.c @@ -164,7 +164,7 @@ command_next(struct lkt_state *srv, char __attribute__((unused)) *args[LKT_MESSA if (MOD_CALL(srv->window_mod, "load", filepath)) return false; else { - config_handle_hook(srv->db, "kara_load", 0); + config_handle_hook(srv->db, "kara_load"); return true; } } @@ -188,7 +188,7 @@ command_previous(struct lkt_state *srv, char __attribute__((unused)) *args[LKT_M if (MOD_CALL(srv->window_mod, "load", filepath)) return false; else { - config_handle_hook(srv->db, "kara_load", 0); + config_handle_hook(srv->db, "kara_load"); return true; } } @@ -223,8 +223,8 @@ command_play(struct lkt_state *srv, char __attribute__((unused)) *args[LKT_MESSA /* Hooks */ if (__play_that_file(srv, pos)) { - config_handle_hook(srv->db, "queue_begin", 0); - config_handle_hook(srv->db, "kara_load", 0); + config_handle_hook(srv->db, "queue_begin"); + config_handle_hook(srv->db, "kara_load"); return true; } else return false; @@ -258,8 +258,8 @@ command_playid(struct lkt_state *srv, char *args[LKT_MESSAGE_ARGS_MAX]) /* Hooks */ if (__play_that_file(srv, pos)) { - config_handle_hook(srv->db, "queue_begin", 0); - config_handle_hook(srv->db, "kara_load", 0); + config_handle_hook(srv->db, "queue_begin"); + config_handle_hook(srv->db, "kara_load"); return true; } else return false; diff --git a/src/base/config.c b/src/base/config.c index 5326bf9c479d827619a7ef7c12975049dc136af5..6ec549ae16bb368977914111c8c8d268922a5179 100644 --- a/src/base/config.c +++ b/src/base/config.c @@ -298,7 +298,7 @@ error: } void -config_handle_hook(volatile sqlite3 *db, const char *hook_name, int arg_count, ...) +config_handle_hook(volatile sqlite3 *db, const char *hook_name) { char hook_handlers[LKT_LINE_MAX]; if (!database_config_get_text_nospace(db, "hook", hook_name, hook_handlers, LKT_LINE_MAX)) { @@ -306,9 +306,6 @@ config_handle_hook(volatile sqlite3 *db, const char *hook_name, int arg_count, . return; } - va_list va; - va_start(va, arg_count); - size_t save = 0; char name[LKT_LINE_MAX]; int code; @@ -318,11 +315,9 @@ config_handle_hook(volatile sqlite3 *db, const char *hook_name, int arg_count, . while (0 == (code = iter_string(hook_handlers, ",", name, LKT_LINE_MAX, &save))) { if (STR_MATCH("none", name)) continue; - reg_call(server_reg, name, 1, va); + reg_call(server_reg, name, 1, db); } if (code == -1) LOG_ERROR("HOOK", "Failed to parse the handle list for hook '%s'", hook_name); - - va_end(va); }