From 530c7862c9d594e8d070ea62daa777d840b3ee1d Mon Sep 17 00:00:00 2001 From: Benno Schulenberg Date: Wed, 25 Nov 2015 10:11:54 +0000 Subject: [PATCH] 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 --- ChangeLog | 2 ++ src/text.c | 10 ++++++---- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/ChangeLog b/ChangeLog index 493ce6a2..7a38ada6 100644 --- 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 * doc/syntax/makefile.nanorc: Also recognize the extensions .make and diff --git a/src/text.c b/src/text.c index fb863149..3e6e75cf 100644 --- 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; }