Commit Diff
- Commit:
528d39b011afb7ef6fd794ba6b74155d4e69bc68- From:
- NRK <nrk@disroot.org>
- Via:
- Hiltjo Posthuma <hiltjo@codemadness.org>
- Date:
- Message:
- tab-complete: figure out the size before copying we already need to know the string length since `cursor` needs to be adjusted. so just calculate the length beforehand and use `memcpy` to copy exactly as much as needed (as opposed to `strncpy` which always writes `n` bytes).
- Actions:
- Patch | Tree
--- dmenu.c +++ dmenu.c @@ -517,9 +517,9 @@ insert: case XK_Tab: if (!sel) return; - strncpy(text, sel->text, sizeof text - 1); + cursor = strnlen(sel->text, sizeof text - 1); + memcpy(text, sel->text, cursor); text[sizeof text - 1] = '\0'; - cursor = strlen(text); match(); break; }
