From 88263cc1d7610233606ddd30bee5202e330e57e5 Mon Sep 17 00:00:00 2001 From: "C. McEnroe" Date: Thu, 23 Apr 2020 20:22:15 -0400 Subject: Separate completeID state from complete state I think this is what causes QUITs to sometimes not appear, because wherever the complete match is skips over some IDs. --- complete.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/complete.c b/complete.c index d23932c..86846f4 100644 --- a/complete.c +++ b/complete.c @@ -117,9 +117,11 @@ void completeReject(void) { match = NULL; } +static struct Node *iter; + uint completeID(const char *str) { - for (match = (match ? match->next : head); match; match = match->next) { - if (match->id && !strcmp(match->str, str)) return match->id; + for (iter = (iter ? iter->next : head); iter; iter = iter->next) { + if (iter->id && !strcmp(iter->str, str)) return iter->id; } return None; } @@ -144,6 +146,7 @@ void completeRemove(uint id, const char *str) { if (id && node->id != id) continue; if (strcmp(node->str, str)) continue; if (match == node) match = NULL; + if (iter == node) iter = NULL; detach(node); free(node->str); free(node); @@ -156,6 +159,7 @@ void completeClear(uint id) { next = node->next; if (node->id != id) continue; if (match == node) match = NULL; + if (iter == node) iter = NULL; detach(node); free(node->str); free(node); -- cgit 1.4.0 ref='/catgirl/commit/man.sh?h=2.2&id=c168e54f0687d7c0c87dbbdd1f735400b35eb6da&follow=1'>commit diff
path: root/man.sh (unfollow)
Commit message (Expand)Author
2019-02-22Disable terminal flow controlJune McEnroe
2019-02-22Bind up and down arrows to scrollJune McEnroe
2019-02-22Remove topic TODOJune McEnroe
2019-02-22Add /znc commandJune McEnroe
2019-02-22Update status line after scrolling and term eventsJune McEnroe
2019-02-22Reorganize input.cJune McEnroe
2019-02-22Fix name of <raw> window in man pageJune McEnroe
2019-02-22Rename global tags with angle bracketsJune McEnroe
2019-02-22Show status window while connectingJune McEnroe
2019-02-22Reorganize UI code for the umpteenth timeJune McEnroe
2019-02-21Replace "view" with "window"June McEnroe
2019-02-21Remove ROT13June McEnroe
2019-02-21Clean up man pageJune McEnroe
2019-01-26Draw UI before connectingJune McEnroe
2019-01-25Avoid unused variable warnings with getyxJune McEnroe
2019-01-25Add GNU/Linux build instructionsJune McEnroe