# HG changeset patch # User Mikael Berthe # Date 1197224797 -3600 # Node ID bba74a50dedf4df940e0a3ca0c97910a212a5d6d # Parent 216b4da93e08df35714102501a79b9b52604944e Improve Cygwin support On Cygwin, isprint() isn't enough so we consider that key codes between 161 and 255 are printable. diff -r 216b4da93e08 -r bba74a50dedf mcabber/src/screen.c --- a/mcabber/src/screen.c Sun Dec 09 19:17:42 2007 +0100 +++ b/mcabber/src/screen.c Sun Dec 09 19:26:37 2007 +0100 @@ -3773,7 +3773,19 @@ display: if (display_char) { - if (kcode.utf8 ? iswprint(key) : (isprint(key) && !is_speckey(key))) { + guint printable; + + if (kcode.utf8) { + printable = iswprint(key); + } else { +#ifdef __CYGWIN__ + printable = (isprint(key) || (key >= 161 && key <= 255)) + && !is_speckey(key); +#else + printable = isprint(key) && !is_speckey(key); +#endif + } + if (printable) { char tmpLine[INPUTLINE_LENGTH+1]; // Check the line isn't too long