diff options
-rw-r--r-- | toxcore/friend_connection.c | 22 | ||||
-rw-r--r-- | toxcore/friend_connection.h | 11 |
2 files changed, 13 insertions, 20 deletions
diff --git a/toxcore/friend_connection.c b/toxcore/friend_connection.c index 5abf6381..f28720cb 100644 --- a/toxcore/friend_connection.c +++ b/toxcore/friend_connection.c | |||
@@ -357,8 +357,9 @@ static int handle_status(void *object, int number, uint8_t status, void *userdat | |||
357 | 357 | ||
358 | for (i = 0; i < MAX_FRIEND_CONNECTION_CALLBACKS; ++i) { | 358 | for (i = 0; i < MAX_FRIEND_CONNECTION_CALLBACKS; ++i) { |
359 | if (friend_con->callbacks[i].status_callback) { | 359 | if (friend_con->callbacks[i].status_callback) { |
360 | friend_con->callbacks[i].status_callback(friend_con->callbacks[i].status_callback_object, | 360 | friend_con->callbacks[i].status_callback( |
361 | friend_con->callbacks[i].status_callback_id, status, userdata); | 361 | friend_con->callbacks[i].callback_object, |
362 | friend_con->callbacks[i].callback_id, status, userdata); | ||
362 | } | 363 | } |
363 | } | 364 | } |
364 | } | 365 | } |
@@ -441,8 +442,8 @@ static int handle_packet(void *object, int number, const uint8_t *data, uint16_t | |||
441 | for (i = 0; i < MAX_FRIEND_CONNECTION_CALLBACKS; ++i) { | 442 | for (i = 0; i < MAX_FRIEND_CONNECTION_CALLBACKS; ++i) { |
442 | if (friend_con->callbacks[i].data_callback) { | 443 | if (friend_con->callbacks[i].data_callback) { |
443 | friend_con->callbacks[i].data_callback( | 444 | friend_con->callbacks[i].data_callback( |
444 | friend_con->callbacks[i].data_callback_object, | 445 | friend_con->callbacks[i].callback_object, |
445 | friend_con->callbacks[i].data_callback_id, data, length, userdata); | 446 | friend_con->callbacks[i].callback_id, data, length, userdata); |
446 | } | 447 | } |
447 | 448 | ||
448 | friend_con = get_conn(fr_c, number); | 449 | friend_con = get_conn(fr_c, number); |
@@ -472,8 +473,9 @@ static int handle_lossy_packet(void *object, int number, const uint8_t *data, ui | |||
472 | 473 | ||
473 | for (i = 0; i < MAX_FRIEND_CONNECTION_CALLBACKS; ++i) { | 474 | for (i = 0; i < MAX_FRIEND_CONNECTION_CALLBACKS; ++i) { |
474 | if (friend_con->callbacks[i].lossy_data_callback) { | 475 | if (friend_con->callbacks[i].lossy_data_callback) { |
475 | friend_con->callbacks[i].lossy_data_callback(friend_con->callbacks[i].lossy_data_callback_object, | 476 | friend_con->callbacks[i].lossy_data_callback( |
476 | friend_con->callbacks[i].lossy_data_callback_id, data, length, userdata); | 477 | friend_con->callbacks[i].callback_object, |
478 | friend_con->callbacks[i].callback_id, data, length, userdata); | ||
477 | } | 479 | } |
478 | 480 | ||
479 | friend_con = get_conn(fr_c, number); | 481 | friend_con = get_conn(fr_c, number); |
@@ -667,13 +669,9 @@ int friend_connection_callbacks(Friend_Connections *fr_c, int friendcon_id, unsi | |||
667 | friend_con->callbacks[index].data_callback = data_callback; | 669 | friend_con->callbacks[index].data_callback = data_callback; |
668 | friend_con->callbacks[index].lossy_data_callback = lossy_data_callback; | 670 | friend_con->callbacks[index].lossy_data_callback = lossy_data_callback; |
669 | 671 | ||
670 | friend_con->callbacks[index].status_callback_object = | 672 | friend_con->callbacks[index].callback_object = object; |
671 | friend_con->callbacks[index].data_callback_object = | 673 | friend_con->callbacks[index].callback_id = number; |
672 | friend_con->callbacks[index].lossy_data_callback_object = object; | ||
673 | 674 | ||
674 | friend_con->callbacks[index].status_callback_id = | ||
675 | friend_con->callbacks[index].data_callback_id = | ||
676 | friend_con->callbacks[index].lossy_data_callback_id = number; | ||
677 | return 0; | 675 | return 0; |
678 | } | 676 | } |
679 | 677 | ||
diff --git a/toxcore/friend_connection.h b/toxcore/friend_connection.h index 4bc5250a..b968c57d 100644 --- a/toxcore/friend_connection.h +++ b/toxcore/friend_connection.h | |||
@@ -79,16 +79,11 @@ typedef struct { | |||
79 | 79 | ||
80 | struct { | 80 | struct { |
81 | int (*status_callback)(void *object, int id, uint8_t status, void *userdata); | 81 | int (*status_callback)(void *object, int id, uint8_t status, void *userdata); |
82 | void *status_callback_object; | ||
83 | int status_callback_id; | ||
84 | |||
85 | int (*data_callback)(void *object, int id, const uint8_t *data, uint16_t length, void *userdata); | 82 | int (*data_callback)(void *object, int id, const uint8_t *data, uint16_t length, void *userdata); |
86 | void *data_callback_object; | ||
87 | int data_callback_id; | ||
88 | |||
89 | int (*lossy_data_callback)(void *object, int id, const uint8_t *data, uint16_t length, void *userdata); | 83 | int (*lossy_data_callback)(void *object, int id, const uint8_t *data, uint16_t length, void *userdata); |
90 | void *lossy_data_callback_object; | 84 | |
91 | int lossy_data_callback_id; | 85 | void *callback_object; |
86 | int callback_id; | ||
92 | } callbacks[MAX_FRIEND_CONNECTION_CALLBACKS]; | 87 | } callbacks[MAX_FRIEND_CONNECTION_CALLBACKS]; |
93 | 88 | ||
94 | uint16_t lock_count; | 89 | uint16_t lock_count; |