From 1dd5ff8682a1cbe1e945cc3407e6f3b637e545f6 Mon Sep 17 00:00:00 2001 From: Perry Werneck Date: Mon, 5 Aug 2019 10:46:56 -0300 Subject: [PATCH] Fixing toggle listener callbacks. --- src/core/toggles.c | 4 ++-- src/include/lib3270-internals.h | 10 ++++++---- src/include/lib3270/toggle.h | 2 +- 3 files changed, 9 insertions(+), 7 deletions(-) diff --git a/src/core/toggles.c b/src/core/toggles.c index 1170a44..94e2705 100644 --- a/src/core/toggles.c +++ b/src/core/toggles.c @@ -256,7 +256,7 @@ static void toggle_notify(H3270 *session, struct lib3270_toggle *t, LIB3270_TOGG for(st = session->listeners.toggle.callbacks[ix]; st != (struct lib3270_toggle_callback *) NULL; st = (struct lib3270_toggle_callback *) st->next) { - st->func(session, ix, st->data); + st->func(session, ix, t->value, st->data); } } @@ -421,7 +421,7 @@ LIB3270_EXPORT LIB3270_TOGGLE lib3270_get_toggle_id(const char *name) return -1; } -LIB3270_EXPORT const void * lib3270_register_toggle_listener(H3270 *hSession, LIB3270_TOGGLE tx, void (*func)(H3270 *, LIB3270_TOGGLE, void *),void *data) +LIB3270_EXPORT const void * lib3270_register_toggle_listener(H3270 *hSession, LIB3270_TOGGLE tx, void (*func)(H3270 *, LIB3270_TOGGLE, char, void *),void *data) { struct lib3270_toggle_callback *st; diff --git a/src/include/lib3270-internals.h b/src/include/lib3270-internals.h index be8c33f..a9f74c1 100644 --- a/src/include/lib3270-internals.h +++ b/src/include/lib3270-internals.h @@ -153,7 +153,9 @@ LIB3270_INTERNAL const char * build_rpq_revision; #endif /*]*/ -/* toggle names */ +/** + * @brief toggle names + */ struct toggle_name { const char *name; int index; @@ -330,9 +332,9 @@ struct lib3270_state_callback struct lib3270_toggle_callback { - struct lib3270_toggle_callback * next; /**< @brief Next callback in chain */ - void * data; /**< @brief User data */ - void (*func)(H3270 *, LIB3270_TOGGLE, void *); /**< @brief Function to call */ + struct lib3270_toggle_callback * next; /**< @brief Next callback in chain */ + void * data; /**< @brief User data */ + void (*func)(H3270 *, LIB3270_TOGGLE, char, void *); /**< @brief Function to call */ }; /** diff --git a/src/include/lib3270/toggle.h b/src/include/lib3270/toggle.h index aa5a001..01692ba 100644 --- a/src/include/lib3270/toggle.h +++ b/src/include/lib3270/toggle.h @@ -104,7 +104,7 @@ LIB3270_EXPORT void lib3270_set_session_id(H3270 *hSession, char id); LIB3270_EXPORT char lib3270_get_session_id(H3270 *hSession); - LIB3270_EXPORT const void * lib3270_register_toggle_listener(H3270 *hSession, LIB3270_TOGGLE tx, void (*func)(H3270 *, LIB3270_TOGGLE, void *),void *data); + LIB3270_EXPORT const void * lib3270_register_toggle_listener(H3270 *hSession, LIB3270_TOGGLE tx, void (*func)(H3270 *, LIB3270_TOGGLE, char, void *),void *data); LIB3270_EXPORT int lib3270_unregister_toggle_listener(H3270 *hSession, LIB3270_TOGGLE tx, const void *id); #endif /* LIB3270_TOGGLE_H_INCLUDED */ -- libgit2 0.21.2