iHandle search (type '7') URIs - sacc - sacc(omys), simple console gopher client Err bitreich.org 70 hgit clone git://bitreich.org/sacc/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/sacc/ URL:git://bitreich.org/sacc/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/sacc/ bitreich.org 70 1Log /scm/sacc/log.gph bitreich.org 70 1Files /scm/sacc/files.gph bitreich.org 70 1Refs /scm/sacc/refs.gph bitreich.org 70 1Tags /scm/sacc/tag bitreich.org 70 1LICENSE /scm/sacc/file/LICENSE.gph bitreich.org 70 i--- Err bitreich.org 70 1commit 3399f31a720905a2ebd03191945307b9aafb0ad4 /scm/sacc/commit/3399f31a720905a2ebd03191945307b9aafb0ad4.gph bitreich.org 70 1parent 408fd866df1036c0a51e58a2029dc9c1f41e979c /scm/sacc/commit/408fd866df1036c0a51e58a2029dc9c1f41e979c.gph bitreich.org 70 hAuthor: Quentin Rameau URL:mailto:quinq@fifth.space bitreich.org 70 iDate: Tue, 21 Aug 2018 15:12:27 +0200 Err bitreich.org 70 i Err bitreich.org 70 iHandle search (type '7') URIs Err bitreich.org 70 i Err bitreich.org 70 iDiffstat: Err bitreich.org 70 i M sacc.c | 14 ++++++++++++-- Err bitreich.org 70 i Err bitreich.org 70 i1 file changed, 12 insertions(+), 2 deletions(-) Err bitreich.org 70 i--- Err bitreich.org 70 1diff --git a/sacc.c b/sacc.c /scm/sacc/file/sacc.c.gph bitreich.org 70 i@@ -756,8 +756,9 @@ searchitem(Item *entry, Item *item) Err bitreich.org 70 i if (!(sel = searchselector(item))) Err bitreich.org 70 i return 0; Err bitreich.org 70 i Err bitreich.org 70 i- if (sel != item->tag) { Err bitreich.org 70 i+ if (sel != item->tag) Err bitreich.org 70 i clearitem(item); Err bitreich.org 70 i+ if (!item->dat) { Err bitreich.org 70 i selector = item->selector; Err bitreich.org 70 i item->selector = item->tag = sel; Err bitreich.org 70 i dig(entry, item); Err bitreich.org 70 i@@ -780,6 +781,7 @@ printout(Item *hole) Err bitreich.org 70 i fputs(hole->raw, stdout); Err bitreich.org 70 i return; Err bitreich.org 70 i case '1': Err bitreich.org 70 i+ case '7': Err bitreich.org 70 i if (dig(hole, hole)) Err bitreich.org 70 i printdir(hole); Err bitreich.org 70 i return; Err bitreich.org 70 i@@ -797,7 +799,6 @@ printout(Item *hole) Err bitreich.org 70 i download(hole, 1); Err bitreich.org 70 i case '2': Err bitreich.org 70 i case '3': Err bitreich.org 70 i- case '7': Err bitreich.org 70 i case '8': Err bitreich.org 70 i case 'T': Err bitreich.org 70 i return; Err bitreich.org 70 i@@ -902,6 +903,15 @@ moldentry(char *url) Err bitreich.org 70 i entry = xcalloc(sizeof(Item)); Err bitreich.org 70 i entry->type = gopherpath[0]; Err bitreich.org 70 i entry->username = entry->selector = ++gopherpath; Err bitreich.org 70 i+ if (entry->type == '7') { Err bitreich.org 70 i+ for (; *p; ++p) { Err bitreich.org 70 i+ if (*p == '\t') { Err bitreich.org 70 i+ asprintf(&entry->tag, "%s", gopherpath); Err bitreich.org 70 i+ *p = '\0'; Err bitreich.org 70 i+ break; Err bitreich.org 70 i+ } Err bitreich.org 70 i+ } Err bitreich.org 70 i+ } Err bitreich.org 70 i entry->host = host; Err bitreich.org 70 i entry->port = port; Err bitreich.org 70 i entry->entry = entry; Err bitreich.org 70 .