Commit 1dd5ff8682a1cbe1e945cc3407e6f3b637e545f6

Authored by Perry Werneck
1 parent daecaf1e

Fixing toggle listener callbacks.

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