summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--toxcore/friend_connection.c22
-rw-r--r--toxcore/friend_connection.h11
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;