]> arthur.barton.de Git - ngircd-alex.git/blobdiff - src/ngircd/numeric.c
ngIRCd Release 27
[ngircd-alex.git] / src / ngircd / numeric.c
index 380b9078b210deb9a6853cf2c966357efec75481..997410683cc9e97a918b0e244c03a129b99c0906 100644 (file)
@@ -214,13 +214,11 @@ Synchronize_Lists(CLIENT * Client)
 static bool
 Send_CHANINFO(CLIENT * Client, CHANNEL * Chan)
 {
-       char *modes, *topic;
+       char *modes, *topic, *key;
        bool has_k, has_l;
 
-#ifdef DEBUG
        Log(LOG_DEBUG, "Sending CHANINFO commands for \"%s\" ...",
            Channel_Name(Chan));
-#endif
 
        modes = Channel_Modes(Chan);
        topic = Channel_Topic(Chan);
@@ -243,9 +241,10 @@ Send_CHANINFO(CLIENT * Client, CHANNEL * Chan)
                                          Channel_Name(Chan), modes, topic);
        }
        /* "CHANINFO <chan> +<modes> <key> <limit> :<topic>" */
+       key = Channel_Key(Chan);
        return IRC_WriteStrClient(Client, "CHANINFO %s +%s %s %lu :%s",
                                  Channel_Name(Chan), modes,
-                                 has_k ? Channel_Key(Chan) : "*",
+                                 has_k ? (key && *key ? key : "*") : "*",
                                  has_l ? Channel_MaxUsers(Chan) : 0, topic);
 } /* Send_CHANINFO */