nano

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

commit dd29c56993c713c6334e82a3240152fd362deef3
parent 7a08fa63f556b9ec92ee93b205481ea48283feee
Author: Benno Schulenberg <bensberg@justemail.net>
Date:   Mon,  4 Jan 2016 09:52:43 +0000

Rewriting the loop, and constifying the input of sctofunc().


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

Diffstat:
MChangeLog | 1+
Msrc/global.c | 8++++----
Msrc/nano.c | 2+-
Msrc/prompt.c | 2+-
Msrc/proto.h | 2+-
5 files changed, 8 insertions(+), 7 deletions(-)

diff --git a/ChangeLog b/ChangeLog @@ -1,6 +1,7 @@ 2016-01-04 Benno Schulenberg <bensberg@justemail.net> * src/global.c (shortcut_init): Nowadays the functions are defined only once, so there is no longer any need to free existing ones. + * src/global.c (sctofunc): Rewrite the loop, and constify the input. 2016-01-04 Mike Frysinger <vapier@gentoo.org> * src/global.c (strtosc, strtomenu): Constify the input parameter. diff --git a/src/global.c b/src/global.c @@ -1260,12 +1260,12 @@ void set_spell_shortcuts(void) } #endif -const subnfunc *sctofunc(sc *s) +const subnfunc *sctofunc(const sc *s) { - subnfunc *f; + subnfunc *f = allfuncs; - for (f = allfuncs; f != NULL && s->scfunc != f->scfunc; f = f->next) - ; + while (f != NULL && f->scfunc != s->scfunc) + f = f->next; return f; } diff --git a/src/nano.c b/src/nano.c @@ -1702,7 +1702,7 @@ int do_input(bool allow_funcs) } if (have_shortcut) { - const subnfunc *f = sctofunc((sc *)s); + const subnfunc *f = sctofunc(s); /* If the function associated with this shortcut is * cutting or copying text, remember this. */ if (s->scfunc == do_cut_text_void diff --git a/src/prompt.c b/src/prompt.c @@ -210,7 +210,7 @@ int do_statusbar_input(bool *ran_func, bool *finished, * functions and setting finished to TRUE to indicate * that we're done after running or trying to run their * associated functions. */ - f = sctofunc((sc *) s); + f = sctofunc(s); if (s->scfunc != NULL) { *ran_func = TRUE; if (f && (!ISSET(VIEW_MODE) || f->viewok) && diff --git a/src/proto.h b/src/proto.h @@ -370,7 +370,7 @@ void shortcut_init(void); void set_lint_or_format_shortcuts(void); void set_spell_shortcuts(void); #endif -const subnfunc *sctofunc(sc *s); +const subnfunc *sctofunc(const sc *s); const char *flagtostr(int flag); sc *strtosc(const char *input); int strtomenu(const char *input);