From 0cc800e73695215ab43b9600a4d60a0d51614d66 Mon Sep 17 00:00:00 2001 From: Bram Matthys Date: Tue, 27 Jun 2023 18:31:25 +0200 Subject: [PATCH] Fix crash on invalid badword { } block in config file (one without type) --- src/modules/chanmodes/censor.c | 3 ++- src/modules/usermodes/censor.c | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/modules/chanmodes/censor.c b/src/modules/chanmodes/censor.c index 5ae21a850..176083319 100644 --- a/src/modules/chanmodes/censor.c +++ b/src/modules/chanmodes/censor.c @@ -95,7 +95,8 @@ int censor_config_test(ConfigFile *cf, ConfigEntry *ce, int type, int *errs) { config_error("%s:%i: badword without type", ce->file->filename, ce->line_number); - return 1; + *errs = 1; + return -1; } else if (strcmp(ce->value, "channel") && strcmp(ce->value, "quit") && strcmp(ce->value, "all")) { diff --git a/src/modules/usermodes/censor.c b/src/modules/usermodes/censor.c index fa8f29158..ed51d77d3 100644 --- a/src/modules/usermodes/censor.c +++ b/src/modules/usermodes/censor.c @@ -86,7 +86,8 @@ int censor_config_test(ConfigFile *cf, ConfigEntry *ce, int type, int *errs) { config_error("%s:%i: badword without type", ce->file->filename, ce->line_number); - return 1; + *errs = 1; + return -1; } else if (strcmp(ce->value, "message") && strcmp(ce->value, "all")) { /* config_error("%s:%i: badword with unknown type",