iAdd topic support - irc - Unnamed repository; edit this file 'description' to name the repository. Err vernunftzentrum.de 70 hgit clone git://vernunftzentrum.de/irc.git URL:git://vernunftzentrum.de/irc.git vernunftzentrum.de 70 1Log /ckeen/repos/irc/log.gph vernunftzentrum.de 70 1Files /ckeen/repos/irc/files.gph vernunftzentrum.de 70 1Refs /ckeen/repos/irc/refs.gph vernunftzentrum.de 70 1README /ckeen/repos/irc/file/README.gph vernunftzentrum.de 70 i--- Err vernunftzentrum.de 70 1commit 8ba4cb0d85f3f438fb3768c0339c43bd16feb6c2 /ckeen/repos/irc/commit/8ba4cb0d85f3f438fb3768c0339c43bd16feb6c2.gph vernunftzentrum.de 70 1parent 43b931057b97856c20c11c587c3e0f5ac55aad7c /ckeen/repos/irc/commit/43b931057b97856c20c11c587c3e0f5ac55aad7c.gph vernunftzentrum.de 70 hAuthor: Christian Kellermann URL:mailto:ckeen@pestilenz.org vernunftzentrum.de 70 iDate: Wed, 28 Mar 2018 21:55:04 +0200 Err vernunftzentrum.de 70 i Err vernunftzentrum.de 70 iAdd topic support Err vernunftzentrum.de 70 i Err vernunftzentrum.de 70 iDiffstat: Err vernunftzentrum.de 70 i irc.c | 14 ++++++++++++++ Err vernunftzentrum.de 70 i Err vernunftzentrum.de 70 i1 file changed, 14 insertions(+), 0 deletions(-) Err vernunftzentrum.de 70 i--- Err vernunftzentrum.de 70 1diff --git a/irc.c b/irc.c /ckeen/repos/irc/file/irc.c.gph vernunftzentrum.de 70 i@@ -491,6 +491,13 @@ scmd(char *usr, char *cmd, char *par, char *data) Err vernunftzentrum.de 70 i chl[s].name[0] = 0; Err vernunftzentrum.de 70 i strncat(chl[s].name, fch, ChanLen - 1); Err vernunftzentrum.de 70 i tdrawbar(); Err vernunftzentrum.de 70 i+ } else if (!strcmp(cmd, "TOPIC") || !strcmp(cmd, "332") Err vernunftzentrum.de 70 i+ || !strcmp(cmd, "331")) { Err vernunftzentrum.de 70 i+ char *chan = !strcmp(cmd, "TOPIC") ? pm : strtok(0, " "); Err vernunftzentrum.de 70 i+ if (!data || !pm || !chan) Err vernunftzentrum.de 70 i+ return; Err vernunftzentrum.de 70 i+ pushf(chfind(chan), "Topic for %s: %s", chan, data); Err vernunftzentrum.de 70 i+ tredraw(); Err vernunftzentrum.de 70 i } else if (!strcmp(cmd, "471") || !strcmp(cmd, "473") Err vernunftzentrum.de 70 i || !strcmp(cmd, "474") || !strcmp(cmd, "475")) { /* Join error. */ Err vernunftzentrum.de 70 i if ((pm = strtok(0, " "))) { Err vernunftzentrum.de 70 i@@ -574,6 +581,13 @@ uparse(char *m) Err vernunftzentrum.de 70 i if (p[1]) Err vernunftzentrum.de 70 i sndf("%s", &p[2]); Err vernunftzentrum.de 70 i return; Err vernunftzentrum.de 70 i+ case 't': Err vernunftzentrum.de 70 i+ p = p + 1 + (p[1]==' '); Err vernunftzentrum.de 70 i+ if (*p == '\0') Err vernunftzentrum.de 70 i+ sndf("TOPIC %s", chl[ch].name); Err vernunftzentrum.de 70 i+ else Err vernunftzentrum.de 70 i+ sndf("TOPIC %s :%s", chl[ch].name, p); Err vernunftzentrum.de 70 i+ return; Err vernunftzentrum.de 70 i case 'q': /* Quit. */ Err vernunftzentrum.de 70 i quit = 1; Err vernunftzentrum.de 70 i return; Err vernunftzentrum.de 70 .