X-Git-Url: http://git.pk910.de/?a=blobdiff_plain;f=src%2Fmod-watchdog.c;h=4f8f27b04a3182c3e6997504dd7a319e821271a7;hb=bd5f5bdad6d0f932aa2b867dd93351134718c0ab;hp=65935bd8105bd1619835171b366d2014681516b1;hpb=f8075c0a2d214a12b52267f78add4ace42e15d63;p=srvx.git diff --git a/src/mod-watchdog.c b/src/mod-watchdog.c index 65935bd..4f8f27b 100644 --- a/src/mod-watchdog.c +++ b/src/mod-watchdog.c @@ -547,13 +547,15 @@ watchdog_saxdb_write(struct saxdb_context *ctx) saxdb_start_record(ctx, KEY_BADWORDS, 1); for (it = dict_first(shitlist); it; it = iter_next(it)) { struct badword *badword = iter_data(it); - saxdb_start_record(ctx, iter_key(it), 0); - - saxdb_write_string(ctx, KEY_BADWORD_MASK, badword->badword_mask); - saxdb_write_int(ctx, KEY_BADWORD_TRIGGERED, badword->triggered); - saxdb_write_int(ctx, KEY_BADWORD_ACTION, badword->action); - - saxdb_end_record(ctx); + if(badword && badword->badword_mask) { + saxdb_start_record(ctx, iter_key(it), 0); + + saxdb_write_string(ctx, KEY_BADWORD_MASK, badword->badword_mask); + saxdb_write_int(ctx, KEY_BADWORD_TRIGGERED, badword->triggered); + saxdb_write_int(ctx, KEY_BADWORD_ACTION, badword->action); + + saxdb_end_record(ctx); + } } saxdb_end_record(ctx); } @@ -562,9 +564,11 @@ watchdog_saxdb_write(struct saxdb_context *ctx) saxdb_start_record(ctx, KEY_CHANNELS, 1); for (it = dict_first(chanlist); it; it = iter_next(it)) { struct watchdog_channel *wc = iter_data(it); - saxdb_start_record(ctx, wc->channel->name, 0); - //anything else? - saxdb_end_record(ctx); + if(wc && wc->channel && wc->channel->name) { + saxdb_start_record(ctx, wc->channel->name, 0); + //anything else? + saxdb_end_record(ctx); + } } saxdb_end_record(ctx); }