1
0
mirror of https://github.com/osmarks/ngircd.git synced 2024-12-12 09:50:29 +00:00

Fix 2 bugs introduced in 74514b8c23

Channel_Modes() and Channel_Topic() return static memory that is zeroed at
creation time. Fix checking for empty modes and topic so they're propagated
correctly.
This commit is contained in:
Federico G. Schwindt 2013-08-11 20:57:11 +01:00
parent aeebde4642
commit cd38e9580e

View File

@ -688,7 +688,7 @@ IRC_CHANINFO( CLIENT *Client, REQUEST *Req )
return CONNECTED;
if (Req->argv[1][0] == '+') {
if (!Channel_Modes(chan)) {
if (!*Channel_Modes(chan)) {
/* OK, this channel doesn't have modes yet,
* set the received ones: */
Channel_SetModes(chan, &Req->argv[1][1]);
@ -727,7 +727,7 @@ IRC_CHANINFO( CLIENT *Client, REQUEST *Req )
if (arg_topic > 0) {
/* We got a topic */
if (!Channel_Topic( chan ) && Req->argv[arg_topic][0]) {
if (!*Channel_Topic(chan) && Req->argv[arg_topic][0]) {
/* OK, there is no topic jet */
Channel_SetTopic(chan, Client, Req->argv[arg_topic]);
IRC_WriteStrChannelPrefix(Client, chan, from, false,