tweaks: use a while loop when the end point is not known in advance
It is easier to see the order of steps and what the terminating condition is.
Этот коммит содержится в:
родитель
3f8e30efb1
Коммит
30591c5e01
13
src/nano.c
13
src/nano.c
@ -1763,20 +1763,21 @@ int do_mouse(void)
|
||||
#ifndef NANO_TINY
|
||||
if (ISSET(SOFTWRAP)) {
|
||||
size_t i = 0;
|
||||
for (openfile->current = openfile->edittop;
|
||||
openfile->current->next && i < mouse_y;
|
||||
openfile->current = openfile->current->next, i++) {
|
||||
|
||||
openfile->current = openfile->edittop;
|
||||
|
||||
while (openfile->current->next != NULL && i < mouse_y) {
|
||||
openfile->current_y = i;
|
||||
i += strlenpt(openfile->current->data) / editwincols;
|
||||
i += strlenpt(openfile->current->data) / editwincols + 1;
|
||||
openfile->current = openfile->current->next;
|
||||
}
|
||||
|
||||
if (i > mouse_y) {
|
||||
openfile->current = openfile->current->prev;
|
||||
openfile->current_x = actual_x(openfile->current->data,
|
||||
mouse_x + (mouse_y - openfile->current_y) * editwincols);
|
||||
} else {
|
||||
} else
|
||||
openfile->current_x = actual_x(openfile->current->data, mouse_x);
|
||||
}
|
||||
} else
|
||||
#endif /* NANO_TINY */
|
||||
{
|
||||
|
Загрузка…
Ссылка в новой задаче
Block a user