It shouldn't be necessary to doubly check for being at the end of file.

git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@5492 35c25a1d-7b9e-4130-9fde-d3aeb78583b8
master
Benno Schulenberg 2015-12-08 18:54:13 +00:00
parent a64bfbee8b
commit 5834638d53
3 changed files with 8 additions and 4 deletions

View File

@ -1,6 +1,8 @@
2015-12-08 Benno Schulenberg <bensberg@justemail.net>
* src/nano.c (splice_node, unlink_node): Let these functions update
'filebot', instead of doing it in four different places each.
* src/search.c (goto_line_posx), src/move (do_down): It should not
be necessary to doubly check for being at the end of file.
2015-12-07 Benno Schulenberg <bensberg@justemail.net>
* src/winio.c (edit_draw): Quit the loop when there is no end match.

View File

@ -460,10 +460,12 @@ void do_down(
#endif
/* If we're at the bottom of the file, get out. */
if (openfile->current == openfile->filebot || !openfile->current->next)
if (openfile->current == openfile->filebot)
return;
assert(ISSET(SOFTWRAP) || openfile->current_y == openfile->current->lineno - openfile->edittop->lineno);
assert(ISSET(SOFTWRAP) || openfile->current_y ==
openfile->current->lineno - openfile->edittop->lineno);
assert(openfile->current->next != NULL);
/* Move the current line of the edit window down. */
openfile->current = openfile->current->next;

View File

@ -936,8 +936,8 @@ void do_replace(void)
/* Go to the specified line and x position. */
void goto_line_posx(ssize_t line, size_t pos_x)
{
for (openfile->current = openfile->fileage; openfile->current != openfile->filebot &&
openfile->current->next != NULL && line > 1; line--)
for (openfile->current = openfile->fileage; line > 1 &&
openfile->current != openfile->filebot; line--)
openfile->current = openfile->current->next;
openfile->current_x = pos_x;