Преглед на файлове

Fix segfault in readln()

This could be reproduced simply by doing: [TAB] and backspacing
a few times.
master
sin преди 10 години
родител
ревизия
cfd530b167
променени са 1 файла, в които са добавени 7 реда и са изтрити 2 реда
  1. +7
    -2
      noice.c

+ 7
- 2
noice.c Целия файл

@@ -287,8 +287,13 @@ readln(void)
if (c == KEY_BACKSPACE) {
getyx(stdscr, y, x);
if (x >= x0) {
ln = realloc(ln, (i - 1) * sizeof(*ln));
i--;
if (i > 0) {
ln = realloc(ln, (i - 1) * sizeof(*ln));
i--;
} else {
free(ln);
ln = NULL;
}
move(y, x);
printw("%c", ' ');
move(y, x);


Loading…
Отказ
Запис