Avoid VLAs in tab complete
parent
5254e1035c
commit
0dd8ac36f4
4
edit.c
4
edit.c
|
@ -87,7 +87,7 @@ static void tabComplete(size_t id) {
|
||||||
tab.len = tab.pre;
|
tab.len = tab.pre;
|
||||||
}
|
}
|
||||||
|
|
||||||
char mbs[MB_LEN_MAX * tab.pre + 1];
|
char mbs[MB_LEN_MAX * Cap];
|
||||||
const wchar_t *ptr = &buf[tab.pos];
|
const wchar_t *ptr = &buf[tab.pos];
|
||||||
size_t n = wcsnrtombs(mbs, &ptr, tab.pre, sizeof(mbs) - 1, NULL);
|
size_t n = wcsnrtombs(mbs, &ptr, tab.pre, sizeof(mbs) - 1, NULL);
|
||||||
assert(n != (size_t)-1);
|
assert(n != (size_t)-1);
|
||||||
|
@ -100,7 +100,7 @@ static void tabComplete(size_t id) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
wchar_t wcs[strlen(comp) + 1];
|
wchar_t wcs[Cap];
|
||||||
n = mbstowcs(wcs, comp, sizeof(wcs));
|
n = mbstowcs(wcs, comp, sizeof(wcs));
|
||||||
assert(n != (size_t)-1);
|
assert(n != (size_t)-1);
|
||||||
if (tab.pos + n + 2 > Cap) {
|
if (tab.pos + n + 2 > Cap) {
|
||||||
|
|
Loading…
Reference in New Issue