{ if (fmt) { va_list args; char buf[BUFSIZE]; *buf = '\0'; va_start(args, fmt); vsnprintf(buf, BUFSIZE - 1, fmt, args); va_end(args); ircdproto.ircd_cmd_part(nick, chan, buf); } else { ircdproto.ircd_cmd_part(nick, chan, NULL); }