From 55220e41c17b8e9dd140f1c770d4885e317d160b Mon Sep 17 00:00:00 2001 From: "B. Watson" Date: Tue, 7 Apr 2026 06:14:30 -0400 Subject: Shave a few bytes from complete.c. 6991 bytes free. --- src/complete.c | 32 ++++++++++++++++++-------------- 1 file changed, 18 insertions(+), 14 deletions(-) (limited to 'src/complete.c') diff --git a/src/complete.c b/src/complete.c index e76def1..fa3a240 100644 --- a/src/complete.c +++ b/src/complete.c @@ -54,12 +54,16 @@ char match(const char *p, const char *q) { len = strlen(p); if(!len) return 0; + return strneq_i(p, q, len); + + /* while(len--) { if(lcase(*p) != lcase(*q)) return 0; p++, q++; } return 1; + */ } void scrape_nick(char *p) { @@ -95,25 +99,25 @@ void scrape_nick(char *p) { list[pm_nick_pos][0] = 0; } -void find_chan_nicks(void) { - signed char i; +void scrape_lines(signed char count, u8 **addr) { char *p; - - add_to = comp_chan_nicks; - pm_nick_pos = 0; - - for(i = 22; i >= 0; i--) { - p = screen_bot_addrs[scr_current] + 40 * i; + while(count >= 0) { + p = addr[scr_current] + 40 * count; scrape_nick(p); if(pm_nick_pos == MAX_PM_NICKS) return; + count--; } - for(i = 24; i >= 0; i--) { - scrape_nick(p); - p = screen_top_addrs[scr_current] + 40 * i; - if(pm_nick_pos == MAX_PM_NICKS) - return; - } +} + +void find_chan_nicks(void) { + add_to = comp_chan_nicks; + pm_nick_pos = 0; + + scrape_lines(22, screen_bot_addrs); + if(pm_nick_pos == MAX_PM_NICKS) + return; + scrape_lines(24, screen_top_addrs); } void comp_complete_done(void) { -- cgit v1.2.3