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 */ | ... | ... |