X-Git-Url: https://jfr.im/git/irc/quakenet/newserv.git/blobdiff_plain/08e62847f1eec98185d6e2bf757bee691f64fb42..40814391c7b017da05d4daa2895093e5099801c7:/newsearch/ns-server.c diff --git a/newsearch/ns-server.c b/newsearch/ns-server.c index 4683b4a8..eb440786 100644 --- a/newsearch/ns-server.c +++ b/newsearch/ns-server.c @@ -30,17 +30,28 @@ struct searchNode *server_parse(searchCtx *ctx, int argc, char **argv) { } if (argc>0) { + struct searchNode *servername; + char *p; + + if (!(servername=argtoconststr("server", ctx, argv[0], &p))) { + free(thenode); + return NULL; + } + numeric = -1; for(i=0;icontent, argv[0])) { + if(n && !strcmp(n->content, p)) { numeric = i; break; } } + (servername->free)(ctx, servername); + if(numeric == -1) { parseError = "server: server not found."; + free(thenode); return NULL; } @@ -75,7 +86,7 @@ void *server_exe_str(searchCtx *ctx, struct searchNode *thenode, void *theinput) sstring *n = serverlist[homeserver(np->numeric)].name; if(!n) - return NULL; + return ""; return n->content; }