Hi, this patch fixes the issue, but other platforms' kbd.c files must be corrected too. I'm only using arm. adr --- /n/sources/plan9/sys/src/9/omap/kbd.c Mon Mar 17 16:50:34 2014 +++ /sys/src/9/omap/kbd.c Sat Feb 11 23:59:45 2023 @@ -208,7 +208,7 @@ int shift; int collecting; int nk; - Rune kc[5]; + Rune kc[UTFmax*2+1]; int buttons; }; --- /n/sources/plan9/sys/src/9/port/latin1.c Tue Apr 30 16:05:23 2013 +++ /sys/src/9/port/latin1.c Sun Feb 12 00:09:27 2023 @@ -20,7 +20,7 @@ long unicode(Rune *k, int n) { - long c; + ulong c; Rune *r; c = 0; @@ -35,6 +35,8 @@ else return -1; } + if(c > 0x10ffff) + return -1; return c; } @@ -59,7 +61,7 @@ if(n>=UTFmax*2+1) return unicode(k, UTFmax*2+1); else - return -(UTFmax+1); + return -(UTFmax*2+1); for(l=latintab; l->ld!=0; l++) if(k[0] == l->ld[0]){ if(n == 1) ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/T2e9c8ba406c24ea7-Mbf6f52450dab45b5d23393e4 Delivery options: https://9fans.topicbox.com/groups/9fans/subscription