diff
minitox.c | 12 +++++++++++-
1 file changed, 11 insertions(+), 1 deletion(-)
diff --git a/minitox.c b/minitox.c
index e9e3582..c539084 100644
--- a/minitox.c
+++ b/minitox.c
@@ -676,7 +676,17 @@ void group_peer_list_changed_cb(Tox *tox, uint32_t group_num, void *user_data) {
for (int i=0;i<count;i++) {
struct GroupPeer *p = cf->peers + i;
- tox_conference_peer_get_name(tox, group_num, i, (uint8_t*)p->name, NULL);
+ TOX_ERR_CONFERENCE_PEER_QUERY name_err;
+ size_t name_len = tox_conference_peer_get_name_size(tox, group_num, i, &name_err);
+ if (name_err != TOX_ERR_CONFERENCE_PEER_QUERY_OK) {
+ p->name[0] = '\0';
+ } else {
+ if (name_len > TOX_MAX_NAME_LENGTH) {
+ name_len = TOX_MAX_NAME_LENGTH;
+ }
+ tox_conference_peer_get_name(tox, group_num, i, (uint8_t*)p->name, NULL);
+ p->name[name_len] = '\0';
+ }
tox_conference_peer_get_public_key(tox, group_num, i, p->pubkey,NULL);
}
}