mirror of
https://github.com/Tha14/toxic.git
synced 2024-12-23 11:33:27 +01:00
escape newlines in contact names/status messages
This commit is contained in:
parent
43552161f9
commit
6492bd12f9
@ -553,7 +553,7 @@ static void delete_friend(Tox *m, int32_t f_num)
|
||||
/* activates delete friend popup */
|
||||
static void del_friend_activate(ToxWindow *self, Tox *m, int32_t f_num)
|
||||
{
|
||||
pendingdelete.popup = newwin(3, 22 + TOXIC_MAX_NAME_LENGTH - 1, 8, 8);
|
||||
pendingdelete.popup = newwin(3, 22 + TOXIC_MAX_NAME_LENGTH, 8, 8);
|
||||
pendingdelete.active = true;
|
||||
pendingdelete.num = f_num;
|
||||
}
|
||||
|
@ -189,7 +189,7 @@ int qsort_strcasecmp_hlpr(const void *str1, const void *str2)
|
||||
- cannot start with a space
|
||||
- must not contain a forward slash (for logfile naming purposes)
|
||||
- must not contain contiguous spaces */
|
||||
int valid_nick(char *nick)
|
||||
int valid_nick(const char *nick)
|
||||
{
|
||||
if (!nick[0] || nick[0] == ' ')
|
||||
return 0;
|
||||
@ -207,6 +207,17 @@ int valid_nick(char *nick)
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* Converts all newline chars to spaces (use for strings that should be contained to a single line) */
|
||||
void escape_newline_str(char *str, int len)
|
||||
{
|
||||
int i;
|
||||
|
||||
for (i = 0; i < len; ++i) {
|
||||
if (str[i] == '\n' || str[i] == '\r')
|
||||
str[i] = ' ';
|
||||
}
|
||||
}
|
||||
|
||||
/* gets base file name from path or original file name if no path is supplied */
|
||||
void get_file_name(char *namebuf, int bufsize, const char *pathname)
|
||||
{
|
||||
|
@ -88,7 +88,10 @@ int qsort_strcasecmp_hlpr(const void *str1, const void *str2);
|
||||
- cannot start with a space
|
||||
- must not contain a forward slash (for logfile naming purposes)
|
||||
- must not contain contiguous spaces */
|
||||
int valid_nick(char *nick);
|
||||
int valid_nick(const char *nick);
|
||||
|
||||
/* Converts all newline chars to spaces (use for strings that should be contained to a single line) */
|
||||
void escape_newline_str(char *str, int len);
|
||||
|
||||
/* gets base file name from path or original file name if no path is supplied */
|
||||
void get_file_name(char *namebuf, int bufsize, const char *pathname);
|
||||
|
@ -112,6 +112,7 @@ void on_nickchange(Tox *m, int32_t friendnumber, const uint8_t *string, uint16_t
|
||||
{
|
||||
char nick[TOXIC_MAX_NAME_LENGTH + 1];
|
||||
length = copy_tox_str(nick, sizeof(nick), (const char *) string, length);
|
||||
escape_newline_str(nick, length);
|
||||
|
||||
int i;
|
||||
|
||||
@ -127,6 +128,7 @@ void on_statusmessagechange(Tox *m, int32_t friendnumber, const uint8_t *string,
|
||||
{
|
||||
char msg[TOX_MAX_STATUSMESSAGE_LENGTH + 1];
|
||||
length = copy_tox_str(msg, sizeof(msg), (const char *) string, length);
|
||||
escape_newline_str(msg, length);
|
||||
|
||||
int i;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user