nano

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

commit 530c7862c9d594e8d070ea62daa777d840b3ee1d
parent b255b01b5054e65e40fde87e634ff4a5d5604e61
Author: Benno Schulenberg <bensberg@justemail.net>
Date:   Wed, 25 Nov 2015 10:11:54 +0000

Handling more internal errors, and doing it correctly: showing it
directly on the statusbar instead of as an undid or redid message.


git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@5442 35c25a1d-7b9e-4130-9fde-d3aeb78583b8

Diffstat:
MChangeLog | 2++
Msrc/text.c | 10++++++----
2 files changed, 8 insertions(+), 4 deletions(-)

diff --git a/ChangeLog b/ChangeLog @@ -7,6 +7,8 @@ occur, instead of silently continuing. * src/text.c (do_undo): Elide an unneeded variable, and don't skip the end of this function when things went wrong. + * src/text.c (do_undo, do_redo, add_undo, update_undo): Handle more + possible internal errors, and do it correctly. 2015-11-24 Benno Schulenberg <bensberg@justemail.net> * doc/syntax/makefile.nanorc: Also recognize the extensions .make and diff --git a/src/text.c b/src/text.c @@ -605,7 +605,7 @@ void do_undo(void) f->data = data; break; default: - undidmsg = _("Internal error: unknown type. Please save your work."); + statusbar(_("Internal error: unknown type. Please save your work.")); break; } @@ -735,7 +735,7 @@ void do_redo(void) u->cutbuffer = NULL; break; default: - redidmsg = _("Internal error: unknown type. Please save your work."); + statusbar(_("Internal error: unknown type. Please save your work.")); break; } @@ -1021,7 +1021,7 @@ void add_undo(undo_type action) break; case ENTER: break; - case OTHER: + default: statusbar(_("Internal error: unknown type. Please save your work.")); break; } @@ -1160,7 +1160,9 @@ fprintf(stderr, " >> Updating... action = %d, openfile->last_action = %d, openf #endif case JOIN: /* These cases are handled by the earlier check for a new line and action. */ - case OTHER: + break; + default: + statusbar(_("Internal error: unknown type. Please save your work.")); break; }