commit e42c03663442f5fb2f66dd59cc5bfdc61c53192c
parent 1d2b462acf1210b8f86966b8dd9bb6e36e369ee1
Author: Hiltjo Posthuma <hiltjo@codemadness.org>
Date:   Wed, 26 Oct 2022 09:43:17 +0200
dmenu: small XmbLookupString code improvements
* Increase the length of composed strings to the same limit as st (32 to 64 bytes).
* Initialize ksym to NoSymbol to be safe: currently this is not an issue though.
* Add comments to clarify the return values of XmbLookupString a bit.
Diffstat:
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/dmenu.c b/dmenu.c
@@ -324,19 +324,19 @@ movewordedge(int dir)
 static void
 keypress(XKeyEvent *ev)
 {
-	char buf[32];
+	char buf[64];
 	int len;
-	KeySym ksym;
+	KeySym ksym = NoSymbol;
 	Status status;
 
 	len = XmbLookupString(xic, ev, buf, sizeof buf, &ksym, &status);
 	switch (status) {
 	default: /* XLookupNone, XBufferOverflow */
 		return;
-	case XLookupChars:
+	case XLookupChars: /* composed string from input method */
 		goto insert;
 	case XLookupKeySym:
-	case XLookupBoth:
+	case XLookupBoth: /* a KeySym and a string are returned: use keysym */
 		break;
 	}