diff options
author | Rich Felker <dalias@aerifal.cx> | 2007-09-01 03:10:43 +0000 |
---|---|---|
committer | Rich Felker <dalias@aerifal.cx> | 2007-09-01 03:10:43 +0000 |
commit | 585c2f95ca03cae1f2792684ad673f7ed69accdb (patch) | |
tree | bdbd98e571b0016cab9541e865675ed002f4f872 | |
parent | 5cfd4a4c4c49ff88e2d55f3397443e3f936c67c0 (diff) |
lame partial support for input methods that give long input strings
-rw-r--r-- | uuterm.h | 2 | ||||
-rw-r--r-- | xlib.c | 4 |
2 files changed, 4 insertions, 2 deletions
@@ -66,7 +66,7 @@ struct uudisp int w, h; int inlen; unsigned char *intext; - unsigned char inbuf[16]; + unsigned char inbuf[64]; int blink; void *font; long priv[64]; @@ -224,7 +224,7 @@ void uudisp_next_event(struct uudisp *d, void *fds) KeySym ks; size_t r, l = sizeof(d->inbuf); unsigned char *s = d->inbuf; - char tmp[32], mbtmp[sizeof(tmp)*MB_LEN_MAX]; + char tmp[64], mbtmp[sizeof(tmp)*MB_LEN_MAX]; wchar_t wtmp[sizeof(tmp)]; int status; int i, n; @@ -286,6 +286,8 @@ void uudisp_next_event(struct uudisp *d, void *fds) if (p->ic) { r = XmbLookupString(p->ic, (void *)&ev, tmp, sizeof(tmp), &ks, &status); switch(status) { + case XBufferOverflow: + break; /* FIXME */ case XLookupKeySym: r = 0; break; |