If joined channel had some low-ascii (color codes), they were displayed

wrong in statusbar and prompt. Also, if you're invited to some channel,
print the lowascii so that you can see them (^B, etc.)


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@400 dbcabf3a-b0e7-0310-adc4-f8d773084564
This commit is contained in:
Timo Sirainen 2000-06-30 19:54:34 +00:00 committed by cras
commit 39282a342f
6 changed files with 40 additions and 14 deletions

View file

@ -506,3 +506,24 @@ int dec2octal(int decimal)
return octal;
}
/* convert all low-ascii (<32) to ^<A..> combinations */
char *show_lowascii(const char *channel)
{
char *str, *p;
str = p = g_malloc(strlen(channel)*2+1);
while (*channel != '\0') {
if ((unsigned char) *channel >= 32)
*p++ = *channel;
else {
*p++ = '^';
*p++ = *channel + 'A'-1;
}
channel++;
}
*p = '\0';
return str;
}

View file

@ -65,4 +65,7 @@ char *replace_chars(char *str, char from, char to);
int octal2dec(int octal);
int dec2octal(int decimal);
/* convert all low-ascii (<32) to ^<A..> combinations */
char *show_lowascii(const char *channel);
#endif