diff options
| author | C. McEnroe | 2021-06-20 19:22:20 -0400 | 
|---|---|---|
| committer | C. McEnroe | 2021-06-20 19:22:20 -0400 | 
| commit | e2bebca7dcfa0af3e3a39b819595cfad593a49d8 (patch) | |
| tree | ef38a500fcd7e302c9e9fc703816215d2353c83e | |
| parent | da374e6e610f9c825ddb7d35170a5beacd2d9f08 (diff) | |
Handle "\1ACTION\1" empty actions
| -rw-r--r-- | handle.c | 14 | 
1 files changed, 11 insertions, 3 deletions
| @@ -1163,10 +1163,18 @@ static void handleReplyNowAway(struct Message *msg) {  }  static bool isAction(struct Message *msg) { -	if (strncmp(msg->params[1], "\1ACTION ", 8)) return false; -	msg->params[1] += 8; +	if (strncmp(msg->params[1], "\1ACTION", 7)) return false; +	if (msg->params[1][7] == ' ') { +		msg->params[1] += 8; +	} else if (msg->params[1][7] == '\1') { +		msg->params[1] += 7; +	} else { +		return false; +	}  	size_t len = strlen(msg->params[1]); -	if (msg->params[1][len - 1] == '\1') msg->params[1][len - 1] = '\0'; +	if (msg->params[1][len - 1] == '\1') { +		msg->params[1][len - 1] = '\0'; +	}  	return true;  } | 
