summary refs log tree commit diff
diff options
context:
space:
mode:
authorJune McEnroe <june@causal.agency>2021-05-28 15:35:09 -0400
committerJune McEnroe <june@causal.agency>2021-05-28 15:35:09 -0400
commit1deee3c81bd7862be52bb2f03da7648756f1e3c9 (patch)
tree0f67bccb6342132c68d27cbe0709adb37e63b429
parentUse | for /window | /num command (diff)
downloadcatgirl-1deee3c81bd7862be52bb2f03da7648756f1e3c9.tar.gz
catgirl-1deee3c81bd7862be52bb2f03da7648756f1e3c9.zip
Improve missing param behavior for /msg, /whois, /ns, /cs
-rw-r--r--command.c13
1 files changed, 9 insertions, 4 deletions
diff --git a/command.c b/command.c
index eae865e..ef82d30 100644
--- a/command.c
+++ b/command.c
@@ -135,12 +135,17 @@ static void commandMe(uint id, char *params) {
 }
 
 static void commandMsg(uint id, char *params) {
+	if (!params) return;
 	char *nick = strsep(&params, " ");
 	uint msg = idFor(nick);
 	if (idColors[msg] == Default) {
 		idColors[msg] = completeColor(id, nick);
 	}
-	splitMessage("PRIVMSG", msg, params);
+	if (params) {
+		splitMessage("PRIVMSG", msg, params);
+	} else {
+		uiShowID(msg);
+	}
 }
 
 static void commandJoin(uint id, char *params) {
@@ -332,7 +337,7 @@ static void commandList(uint id, char *params) {
 
 static void commandWhois(uint id, char *params) {
 	(void)id;
-	if (!params) return;
+	if (!params) params = self.nick;
 	uint count = 1;
 	for (char *ch = params; *ch; ++ch) {
 		if (*ch == ',') count++;
@@ -350,12 +355,12 @@ static void commandWhowas(uint id, char *params) {
 
 static void commandNS(uint id, char *params) {
 	(void)id;
-	if (params) ircFormat("PRIVMSG NickServ :%s\r\n", params);
+	ircFormat("PRIVMSG NickServ :%s\r\n", (params ?: "HELP"));
 }
 
 static void commandCS(uint id, char *params) {
 	(void)id;
-	if (params) ircFormat("PRIVMSG ChanServ :%s\r\n", params);
+	ircFormat("PRIVMSG ChanServ :%s\r\n", (params ?: "HELP"));
 }
 
 static void commandQuery(uint id, char *params) {
>June McEnroe IMDB serves a page to our dumb User-Agent whose <title> is past the 8K boundary but serves something normal to curl(1). 2019-10-02Add The Red Threads of FortuneJune McEnroe 2019-09-28Add The Black Tides of HeavenJune McEnroe 2019-09-27Fail on HTTP failure status in titleJune McEnroe 2019-09-23Add Trail of LightningJune McEnroe 2019-09-22Revert "Enable cookies in title"June McEnroe This reverts commit 3231fe21d3b389448c9a5ca7b4c91fdd25c9e677. 2019-09-20Enable cookies in titleJune McEnroe Perhaps this will make it less suspicious to Google. Who knows. 2019-09-16Use sensitivity aliases in TF2June McEnroe 2019-09-16Add The Just CityJune McEnroe 2019-09-12Only GET the final redirect locationJune McEnroe 2019-09-12Consume entire bodyJune McEnroe Aborting the request and leaving data around may be causing intermittent errors. Just discard the rest of the data. 2019-09-10Add title -v flagJune McEnroe 2019-09-10Use curl error bufferJune McEnroe 2019-09-10Set Accept-Encoding in titleJune McEnroe Because apparently it's fine for servers to respond with Content-Encoding you didn't ask for, and curl won't decode it if you didn't ask for it. 2019-09-08Set title User-AgentJune McEnroe Some things don't like you if you don't send one. 2019-09-07Add -x flag to titleJune McEnroe 2019-09-07Ignore SIGPIPE in relayJune McEnroe Allows restarting consumers safely. 2019-09-07Add A Memory Called EmpireJune McEnroe 2019-09-05Handle lack of Content-TypeJune McEnroe 2019-09-05Use CURLINFO_CONTENT_TYPEJune McEnroe Oops, didn't see this. 2019-09-05Decode entities in titlesJune McEnroe 2019-09-05Print title as soon as it's availableJune McEnroe 2019-09-05Use CURL_PREFIX to set flagsJune McEnroe 2019-09-05Add titleJune McEnroe 2019-09-04Add Avorter n'est pas tuerJune McEnroe 2019-08-29Unset executable on shell scriptsJune McEnroe 2019-08-29Add long-missing setopt to bin.7June McEnroe 2019-08-29Add editJune McEnroe