Skip to content

Commit 8aa163f

Browse files
committed
Merge branch 'perf-rebase' of https://github.com/tux3/toxcore
2 parents aba37b0 + 3206faf commit 8aa163f

File tree

1 file changed

+9
-7
lines changed

1 file changed

+9
-7
lines changed

toxcore/Messenger.c

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -581,9 +581,11 @@ int m_copy_statusmessage(Messenger *m, int32_t friendnumber, uint8_t *buf, uint3
581581
if (friend_not_valid(m, friendnumber))
582582
return -1;
583583

584-
memset(buf, 0, maxlen);
585-
memcpy(buf, m->friendlist[friendnumber].statusmessage, MIN(maxlen, m->friendlist[friendnumber].statusmessage_length));
586-
return MIN(maxlen, m->friendlist[friendnumber].statusmessage_length);
584+
int msglen = MIN(maxlen, m->friendlist[friendnumber].statusmessage_length);
585+
586+
memcpy(buf, m->friendlist[friendnumber].statusmessage, msglen);
587+
memset(buf + msglen, 0, maxlen - msglen);
588+
return msglen;
587589
}
588590

589591
/* return the size of friendnumber's user status.
@@ -596,9 +598,10 @@ int m_get_self_statusmessage_size(Messenger *m)
596598

597599
int m_copy_self_statusmessage(Messenger *m, uint8_t *buf, uint32_t maxlen)
598600
{
599-
memset(buf, 0, maxlen);
600-
memcpy(buf, m->statusmessage, MIN(maxlen, m->statusmessage_length));
601-
return MIN(maxlen, m->statusmessage_length);
601+
int msglen = MIN(maxlen, m->statusmessage_length);
602+
memcpy(buf, m->statusmessage, msglen);
603+
memset(buf + msglen, 0, maxlen - msglen);
604+
return msglen;
602605
}
603606

604607
uint8_t m_get_userstatus(Messenger *m, int32_t friendnumber)
@@ -2693,7 +2696,6 @@ void messenger_save(Messenger *m, uint8_t *data)
26932696
memset(relays, 0, len);
26942697
copy_connected_tcp_relays(m->net_crypto, relays, NUM_SAVED_TCP_RELAYS);
26952698
memcpy(data, relays, len);
2696-
data += len;
26972699
}
26982700

26992701
static int messenger_load_state_callback(void *outer, const uint8_t *data, uint32_t length, uint16_t type)

0 commit comments

Comments
 (0)