Revert mode source when opping a user on channel creation (bug #1197510).
[ircu2.10.12-pk.git] / ircd / channel.c
index ddb85d77d56a75cd32f65bbafd05f2e6434e5c37..472d92759cf885dd5d7ea1f6586f52af54615eb2 100644 (file)
@@ -3417,7 +3417,8 @@ joinbuf_join(struct JoinBuf *jbuf, struct Channel *chan, unsigned int flags)
 
       /* send an op, too, if needed */
       if (flags & CHFL_CHANOP)
-       sendcmdto_channel_butserv_butone(&me, CMD_MODE, chan, NULL, 0, "%H +o %C",
+       sendcmdto_channel_butserv_butone((chan->mode.apass[0] ? &me : jbuf->jb_source),
+                                         CMD_MODE, chan, NULL, 0, "%H +o %C",
                                         chan, jbuf->jb_source);
     } else if (MyUser(jbuf->jb_source))
       sendcmdto_one(jbuf->jb_source, CMD_JOIN, jbuf->jb_source, ":%H", chan);