--- a/src/nexus.c Mon Mar 09 16:30:59 2009 +0200
+++ b/src/nexus.c Tue Mar 10 01:11:12 2009 +0200
@@ -62,7 +62,15 @@
.realname = "SpBot (development version)",
}
};
- const char *log_database = NULL, *log_channel = NULL;
+
+ struct irc_chan_info log_chan_info = {
+ .channel = NULL,
+ };
+
+ struct irc_log_info log_info = {
+ .db_info = NULL,
+ .channel = NULL,
+ };
bool port_default = true;
@@ -91,11 +99,11 @@
break;
case OPT_LOG_DATABASE:
- log_database = optarg;
+ log_info.db_info = optarg;
break;
case OPT_LOG_CHANNEL:
- log_channel = optarg;
+ log_chan_info.channel = optarg;
break;
case '?':
@@ -117,8 +125,13 @@
FATAL_ERROR(&err, "irc_net_create");
// logging?
- if (log_database || log_channel) {
- if ((ERROR_CODE(&err) = irc_log_init(ev_base, log_database, net->conn, log_channel)))
+ if (log_info.db_info || log_chan_info.channel) {
+ // get the channel
+ if (log_chan_info.channel && (log_info.channel = irc_net_add_chan(net, &log_chan_info)) == NULL)
+ FATAL("irc_net_add_chan");
+
+ // init the irc_log module
+ if ((ERROR_CODE(&err) = irc_log_init(ev_base, &log_info)))
FATAL_ERROR(&err, "irc_log_init");
}