summaryrefslogtreecommitdiff
path: root/toxcore
diff options
context:
space:
mode:
Diffstat (limited to 'toxcore')
-rw-r--r--toxcore/Messenger.c8
-rw-r--r--toxcore/Messenger.h3
-rw-r--r--toxcore/tox.h3
3 files changed, 10 insertions, 4 deletions
diff --git a/toxcore/Messenger.c b/toxcore/Messenger.c
index 846bed6d..a1abce41 100644
--- a/toxcore/Messenger.c
+++ b/toxcore/Messenger.c
@@ -462,15 +462,15 @@ int m_copy_statusmessage(Messenger *m, int friendnumber, uint8_t *buf, uint32_t
462 return -1; 462 return -1;
463 463
464 memset(buf, 0, maxlen); 464 memset(buf, 0, maxlen);
465 memcpy(buf, m->friendlist[friendnumber].statusmessage, MIN(maxlen, MAX_STATUSMESSAGE_LENGTH) - 1); 465 memcpy(buf, m->friendlist[friendnumber].statusmessage, MIN(maxlen, m->friendlist[friendnumber].statusmessage_length));
466 return 0; 466 return MIN(maxlen, m->friendlist[friendnumber].statusmessage_length);
467} 467}
468 468
469int m_copy_self_statusmessage(Messenger *m, uint8_t *buf, uint32_t maxlen) 469int m_copy_self_statusmessage(Messenger *m, uint8_t *buf, uint32_t maxlen)
470{ 470{
471 memset(buf, 0, maxlen); 471 memset(buf, 0, maxlen);
472 memcpy(buf, m->statusmessage, MIN(maxlen, MAX_STATUSMESSAGE_LENGTH) - 1); 472 memcpy(buf, m->statusmessage, MIN(maxlen, m->statusmessage_length));
473 return 0; 473 return MIN(maxlen, m->statusmessage_length);
474} 474}
475 475
476USERSTATUS m_get_userstatus(Messenger *m, int friendnumber) 476USERSTATUS m_get_userstatus(Messenger *m, int friendnumber)
diff --git a/toxcore/Messenger.h b/toxcore/Messenger.h
index 9d7f17dc..a4c6114b 100644
--- a/toxcore/Messenger.h
+++ b/toxcore/Messenger.h
@@ -276,6 +276,9 @@ int m_get_statusmessage_size(Messenger *m, int friendnumber);
276/* Copy friendnumber's status message into buf, truncating if size is over maxlen. 276/* Copy friendnumber's status message into buf, truncating if size is over maxlen.
277 * Get the size you need to allocate from m_get_statusmessage_size. 277 * Get the size you need to allocate from m_get_statusmessage_size.
278 * The self variant will copy our own status message. 278 * The self variant will copy our own status message.
279 *
280 * returns the length of the copied data on success
281 * retruns -1 on failure.
279 */ 282 */
280int m_copy_statusmessage(Messenger *m, int friendnumber, uint8_t *buf, uint32_t maxlen); 283int m_copy_statusmessage(Messenger *m, int friendnumber, uint8_t *buf, uint32_t maxlen);
281int m_copy_self_statusmessage(Messenger *m, uint8_t *buf, uint32_t maxlen); 284int m_copy_self_statusmessage(Messenger *m, uint8_t *buf, uint32_t maxlen);
diff --git a/toxcore/tox.h b/toxcore/tox.h
index e6cf0322..718f817b 100644
--- a/toxcore/tox.h
+++ b/toxcore/tox.h
@@ -204,6 +204,9 @@ int tox_get_statusmessage_size(Tox *tox, int friendnumber);
204/* Copy friendnumber's status message into buf, truncating if size is over maxlen. 204/* Copy friendnumber's status message into buf, truncating if size is over maxlen.
205 * Get the size you need to allocate from m_get_statusmessage_size. 205 * Get the size you need to allocate from m_get_statusmessage_size.
206 * The self variant will copy our own status message. 206 * The self variant will copy our own status message.
207 *
208 * returns the length of the copied data on success
209 * retruns -1 on failure.
207 */ 210 */
208int tox_copy_statusmessage(Tox *tox, int friendnumber, uint8_t *buf, uint32_t maxlen); 211int tox_copy_statusmessage(Tox *tox, int friendnumber, uint8_t *buf, uint32_t maxlen);
209int tox_copy_self_statusmessage(Tox *tox, uint8_t *buf, uint32_t maxlen); 212int tox_copy_self_statusmessage(Tox *tox, uint8_t *buf, uint32_t maxlen);