it* sacc + cursorline and uri preview Err codevoid.de 70 i Err codevoid.de 70 hgit clone git://git.codevoid.de/sacc-sdk URL:git://git.codevoid.de/sacc-sdk codevoid.de 70 1Log /git/sacc-sdk/log.gph codevoid.de 70 1Files /git/sacc-sdk/files.gph codevoid.de 70 1Refs /git/sacc-sdk/refs.gph codevoid.de 70 1LICENSE /git/sacc-sdk/file/LICENSE.gph codevoid.de 70 i--- Err codevoid.de 70 1commit 3d2081c17810cae6607b3a265f848e5031002d0a /git/sacc-sdk/commit/3d2081c17810cae6607b3a265f848e5031002d0a.gph codevoid.de 70 1parent bab7585c38f70040c68865455e3fafa552cf9f6c /git/sacc-sdk/commit/bab7585c38f70040c68865455e3fafa552cf9f6c.gph codevoid.de 70 hAuthor: Leonardo Taccari URL:mailto:iamleot@gmail.com codevoid.de 70 iDate: Sat, 18 Aug 2018 15:18:32 +0200 Err codevoid.de 70 i Err codevoid.de 70 iIgnore possible extra tab delimited fields Err codevoid.de 70 i Err codevoid.de 70 iAccording RFC 1436: Err codevoid.de 70 i Err codevoid.de 70 i> [...] If there are yet other tab delimited fields, the basic Err codevoid.de 70 i> Gopher client should ignore them. [...] Err codevoid.de 70 i Err codevoid.de 70 iDiffstat: Err codevoid.de 70 i M sacc.c | 16 +++++++++------- Err codevoid.de 70 i Err codevoid.de 70 i1 file changed, 9 insertions(+), 7 deletions(-) Err codevoid.de 70 i--- Err codevoid.de 70 1diff --git a/sacc.c b/sacc.c /git/sacc-sdk/file/sacc.c.gph codevoid.de 70 it@@ -283,11 +283,11 @@ displaytextitem(Item *item) Err codevoid.de 70 i } Err codevoid.de 70 i Err codevoid.de 70 i static char * Err codevoid.de 70 i-pickfield(char **raw, char sep) Err codevoid.de 70 i+pickfield(char **raw, const char *sep) Err codevoid.de 70 i { Err codevoid.de 70 i char *c, *f = *raw; Err codevoid.de 70 i Err codevoid.de 70 i- for (c = *raw; *c && *c != sep; ++c) Err codevoid.de 70 i+ for (c = *raw; *c && strchr(sep, *c) == NULL; ++c) Err codevoid.de 70 i ; Err codevoid.de 70 i Err codevoid.de 70 i *c = '\0'; Err codevoid.de 70 it@@ -309,7 +309,7 @@ invaliditem(char *raw) Err codevoid.de 70 i if (c) Err codevoid.de 70 i *raw++ = '\0'; Err codevoid.de 70 i Err codevoid.de 70 i- return (tabs == 3) ? NULL : raw; Err codevoid.de 70 i+ return (tabs >= 3) ? NULL : raw; Err codevoid.de 70 i } Err codevoid.de 70 i Err codevoid.de 70 i static void Err codevoid.de 70 it@@ -327,10 +327,12 @@ molditem(Item *item, char **raw) Err codevoid.de 70 i } Err codevoid.de 70 i Err codevoid.de 70 i item->type = *raw[0]++; Err codevoid.de 70 i- item->username = pickfield(raw, '\t'); Err codevoid.de 70 i- item->selector = pickfield(raw, '\t'); Err codevoid.de 70 i- item->host = pickfield(raw, '\t'); Err codevoid.de 70 i- item->port = pickfield(raw, '\r'); Err codevoid.de 70 i+ item->username = pickfield(raw, "\t"); Err codevoid.de 70 i+ item->selector = pickfield(raw, "\t"); Err codevoid.de 70 i+ item->host = pickfield(raw, "\t"); Err codevoid.de 70 i+ item->port = pickfield(raw, "\t\r"); Err codevoid.de 70 i+ while (*raw[0] != '\0') Err codevoid.de 70 i+ ++*raw; Err codevoid.de 70 i if (!*raw[0]) Err codevoid.de 70 i ++*raw; Err codevoid.de 70 i } Err codevoid.de 70 .