nano

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

commit d23283e24968981f165021725f7d5f8b891c92d2
parent 7ffc7b0438fce2399e9e4c9652cc33cfa95e609e
Author: Benno Schulenberg <bensberg@justemail.net>
Date:   Sun, 27 Jul 2014 19:13:46 +0000

Removing the now unused and unneeded addition ability to the shortcut list.


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

Diffstat:
MChangeLog | 4++++
Msrc/global.c | 37+++++++++++++------------------------
2 files changed, 17 insertions(+), 24 deletions(-)

diff --git a/ChangeLog b/ChangeLog @@ -1,3 +1,7 @@ +2014-07-27 Benno Schulenberg <bensberg@justemail.net> + * src/global.c (add_to_sclist): Remove the now unused and unneeded + addition ability from this builder function of the shortcut list. + 2014-07-24 Jordi Mallach <jordi@gnu.org> * doc/texinfo/nano.texi, doc/man/nanorc.5: Typo fix. diff --git a/src/global.c b/src/global.c @@ -343,37 +343,26 @@ const sc *first_sc_for(int menu, void (*func)(void)) return NULL; } - -/* Add a string to the shortcut list. - * Allows updates to existing entries in the list. */ +/* Add a key combo to the shortcut list. */ void add_to_sclist(int menu, const char *scstring, void (*func)(void), int toggle) { - sc *s; - - if (sclist == NULL) { - sclist = (sc *)nmalloc(sizeof(sc)); - s = sclist; - s->next = NULL; - } else { - for (s = sclist; s->next != NULL; s = s->next) - if (s->menu == menu && s->keystr == scstring) - break; + static sc *tailsc; + sc *s = (sc *)nmalloc(sizeof(sc)); - if (s->menu != menu || s->keystr != scstring) { /* i.e. this is not a replace... */ -#ifdef DEBUG - fprintf(stderr, "No match found...\n"); -#endif - s->next = (sc *)nmalloc(sizeof(sc)); - s = s->next; - s->next = NULL; - } - } + /* Start the list, or tack on the next item. */ + if (sclist == NULL) + sclist = s; + else + tailsc->next = s; + tailsc = s; + s->next = NULL; - s->type = strtokeytype(scstring); + /* Fill in the data. */ s->menu = menu; + s->scfunc = func; s->toggle = toggle; s->keystr = (char *) scstring; - s->scfunc = func; + s->type = strtokeytype(scstring); assign_keyinfo(s); #ifdef DEBUG