- ptr = Channel_Modes(chan);
- while (*ptr) {
- if (*ptr == 'l') {
- snprintf(l, sizeof(l), " %lu",
- Channel_MaxUsers(chan));
- strlcat(modes_add, l,
- sizeof(modes_add));
- }
- if (*ptr == 'k') {
- strlcat(modes_add, " ",
- sizeof(modes_add));
- strlcat(modes_add, Channel_Key(chan),
- sizeof(modes_add));
- }
- ptr++;
+ if (Channel_HasMode(chan, 'l')) {
+ snprintf(l, sizeof(l), " %lu",
+ Channel_MaxUsers(chan));
+ strlcat(modes_add, l, sizeof(modes_add));
+ }
+ if (Channel_HasMode(chan, 'k')) {
+ strlcat(modes_add, " ", sizeof(modes_add));
+ strlcat(modes_add, Channel_Key(chan),
+ sizeof(modes_add));