1
0
mirror of https://github.com/Tha14/toxic.git synced 2024-07-01 18:47:46 +02:00

added cmuch smaller client-specific maximum name length

This commit is contained in:
Jfreegman 2013-09-13 00:35:48 -04:00
parent d4f365e28f
commit 863121273e
4 changed files with 27 additions and 10 deletions

View File

@ -316,8 +316,14 @@ static void execute(ToxWindow *self, ChatContext *ctx, StatusBar *statusbar, Tox
return;
}
nick++;
tox_setname(m, nick, strlen(nick) + 1);
int len = strlen(++nick);
if (len > TOXIC_MAX_NAME_LENGTH) {
nick[TOXIC_MAX_NAME_LENGTH] = L'\0';
len = TOXIC_MAX_NAME_LENGTH;
}
tox_setname(m, nick, len+1);
prompt_update_nick(self->prompt, nick);
wprintw(ctx->history, "Nickname set to: %s\n", nick);
}

View File

@ -384,10 +384,19 @@ void cmd_nick(ToxWindow *self, Tox *m, int argc, char **argv)
return;
}
if (nick[0] == '\"')
nick[strlen(++nick)-1] = L'\0';
int len = strlen(nick);
tox_setname(m, nick, strlen(nick) + 1);
if (nick[0] == '\"') {
++nick;
nick[--len-1] = L'\0';
}
if (len > TOXIC_MAX_NAME_LENGTH) {
nick[TOXIC_MAX_NAME_LENGTH] = L'\0';
len = TOXIC_MAX_NAME_LENGTH;
}
tox_setname(m, nick, len+1);
prompt_update_nick(self, nick);
store_data(m, DATA_FILE);

View File

@ -16,12 +16,9 @@
#define MAX_FRIENDS_NUM 100
#define MAX_STR_SIZE 256
#define KEY_SIZE_BYTES 32
/* number of permanent default windows */
#define N_DEFAULT_WINS 3
#define TOXIC_MAX_NAME_LENGTH 30 /* Not to be confused with TOX_MAX_NAME_LENGTH */
#define N_DEFAULT_WINS 3 /* number of permanent default windows */
#define UNKNOWN_NAME "Unknown"
#define EXIT_SUCCESS 0
#define EXIT_FAILURE 1

View File

@ -81,6 +81,11 @@ void on_action(Tox *m, int friendnumber, uint8_t *string, uint16_t length, void
void on_nickchange(Tox *m, int friendnumber, uint8_t *string, uint16_t length, void *userdata)
{
if (length >= TOXIC_MAX_NAME_LENGTH) { /* length includes null byte */
string[TOXIC_MAX_NAME_LENGTH] = L'\0';
length = TOXIC_MAX_NAME_LENGTH+1;
}
int i;
for (i = 0; i < MAX_WINDOWS_NUM; ++i) {