more work on ansi display

This commit is contained in:
Andrew Pamment 2016-04-22 14:50:29 +10:00
parent 6bb2df7abd
commit baa3a0fef7

View File

@ -820,11 +820,21 @@ void read_message(int socket, struct user_record *user, struct msg_headers *msgh
ansi = z;
while (strchr("ABCDEFGHIGJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz", body[z]) == NULL)
z++;
if (body[z] == 'm' || body[z] == 'C') {
strncpy(buffer, &body[ansi], z - ansi);
buffer[z - ansi] = '\0';
if (body[z] == 'm' || body[z] == 'C' || body[z] == 'B' || body[z] == 'D') {
strncpy(buffer, &body[ansi], (z - ansi) + 1);
buffer[z - ansi + 1] = '\0';
s_putstring(socket, buffer);
}
if (body[z] == 'C') {
chars += atoi(&body[ansi + 2]);
}
if (body[z] == 'B') {
lines += atoi(&body[ansi + 2]);
}
if (body[z] == 'D') {
chars -= atoi(&body[ansi + 2]);
}
} else {
chars++;
s_putchar(socket, body[z]);