nano

nano with my custom patches
git clone git://bsandro.tech/nano
Log | Files | Refs | README | LICENSE

commit f63fee79e35752abc98d537aa520a674c4e9bc4e
parent 20034139899491db6273017902d9ef729bceec3a
Author: Benno Schulenberg <bensberg@telfort.nl>
Date:   Sat,  1 Jun 2019 11:10:48 +0200

tweaks: merge two functions, as the first is called just once

Diffstat:
Msrc/files.c | 31++++++++++++++-----------------
1 file changed, 14 insertions(+), 17 deletions(-)

diff --git a/src/files.c b/src/files.c @@ -642,31 +642,28 @@ void switch_to_next_buffer(void) redecorate_after_switch(); } -/* Unlink a node from the rest of the circular list, and delete it. */ -void unlink_opennode(openfilestruct *fileptr) +/* Remove the current buffer from the circular list of buffers. */ +void close_buffer(void) { - if (fileptr == startfile) + openfilestruct *orphan = openfile; + + if (orphan == startfile) startfile = startfile->next; - fileptr->prev->next = fileptr->next; - fileptr->next->prev = fileptr->prev; + orphan->prev->next = orphan->next; + orphan->next->prev = orphan->prev; - free(fileptr->filename); - free_lines(fileptr->filetop); + free(orphan->filename); + free_lines(orphan->filetop); #ifndef NANO_TINY - free(fileptr->current_stat); - free(fileptr->lock_filename); + free(orphan->current_stat); + free(orphan->lock_filename); /* Free the undo stack. */ - discard_until(NULL, fileptr, TRUE); + discard_until(NULL, orphan, TRUE); #endif - free(fileptr); -} -/* Remove the current buffer from the circular list of buffers. */ -void close_buffer(void) -{ - openfile = openfile->prev; - unlink_opennode(openfile->next); + openfile = orphan->prev; + free(orphan); /* When just one buffer remains open, show "Exit" in the help lines. */ if (openfile == openfile->next)