Commit 1dd5ff8682a1cbe1e945cc3407e6f3b637e545f6
1 parent
daecaf1e
Exists in
master
and in
3 other branches
Fixing toggle listener callbacks.
Showing
3 changed files
with
9 additions
and
7 deletions
Show diff stats
src/core/toggles.c
... | ... | @@ -256,7 +256,7 @@ static void toggle_notify(H3270 *session, struct lib3270_toggle *t, LIB3270_TOGG |
256 | 256 | |
257 | 257 | for(st = session->listeners.toggle.callbacks[ix]; st != (struct lib3270_toggle_callback *) NULL; st = (struct lib3270_toggle_callback *) st->next) |
258 | 258 | { |
259 | - st->func(session, ix, st->data); | |
259 | + st->func(session, ix, t->value, st->data); | |
260 | 260 | } |
261 | 261 | |
262 | 262 | } |
... | ... | @@ -421,7 +421,7 @@ LIB3270_EXPORT LIB3270_TOGGLE lib3270_get_toggle_id(const char *name) |
421 | 421 | return -1; |
422 | 422 | } |
423 | 423 | |
424 | -LIB3270_EXPORT const void * lib3270_register_toggle_listener(H3270 *hSession, LIB3270_TOGGLE tx, void (*func)(H3270 *, LIB3270_TOGGLE, void *),void *data) | |
424 | +LIB3270_EXPORT const void * lib3270_register_toggle_listener(H3270 *hSession, LIB3270_TOGGLE tx, void (*func)(H3270 *, LIB3270_TOGGLE, char, void *),void *data) | |
425 | 425 | { |
426 | 426 | struct lib3270_toggle_callback *st; |
427 | 427 | ... | ... |
src/include/lib3270-internals.h
... | ... | @@ -153,7 +153,9 @@ LIB3270_INTERNAL const char * build_rpq_revision; |
153 | 153 | #endif /*]*/ |
154 | 154 | |
155 | 155 | |
156 | -/* toggle names */ | |
156 | +/** | |
157 | + * @brief toggle names | |
158 | + */ | |
157 | 159 | struct toggle_name { |
158 | 160 | const char *name; |
159 | 161 | int index; |
... | ... | @@ -330,9 +332,9 @@ struct lib3270_state_callback |
330 | 332 | |
331 | 333 | struct lib3270_toggle_callback |
332 | 334 | { |
333 | - struct lib3270_toggle_callback * next; /**< @brief Next callback in chain */ | |
334 | - void * data; /**< @brief User data */ | |
335 | - void (*func)(H3270 *, LIB3270_TOGGLE, void *); /**< @brief Function to call */ | |
335 | + struct lib3270_toggle_callback * next; /**< @brief Next callback in chain */ | |
336 | + void * data; /**< @brief User data */ | |
337 | + void (*func)(H3270 *, LIB3270_TOGGLE, char, void *); /**< @brief Function to call */ | |
336 | 338 | }; |
337 | 339 | |
338 | 340 | /** | ... | ... |
src/include/lib3270/toggle.h
... | ... | @@ -104,7 +104,7 @@ |
104 | 104 | LIB3270_EXPORT void lib3270_set_session_id(H3270 *hSession, char id); |
105 | 105 | LIB3270_EXPORT char lib3270_get_session_id(H3270 *hSession); |
106 | 106 | |
107 | - LIB3270_EXPORT const void * lib3270_register_toggle_listener(H3270 *hSession, LIB3270_TOGGLE tx, void (*func)(H3270 *, LIB3270_TOGGLE, void *),void *data); | |
107 | + LIB3270_EXPORT const void * lib3270_register_toggle_listener(H3270 *hSession, LIB3270_TOGGLE tx, void (*func)(H3270 *, LIB3270_TOGGLE, char, void *),void *data); | |
108 | 108 | LIB3270_EXPORT int lib3270_unregister_toggle_listener(H3270 *hSession, LIB3270_TOGGLE tx, const void *id); |
109 | 109 | |
110 | 110 | #endif /* LIB3270_TOGGLE_H_INCLUDED */ | ... | ... |