diff options
Diffstat (limited to 'sub/filter_jsre.c')
-rw-r--r-- | sub/filter_jsre.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/sub/filter_jsre.c b/sub/filter_jsre.c index af4fbbeba3..fb711814e3 100644 --- a/sub/filter_jsre.c +++ b/sub/filter_jsre.c @@ -74,6 +74,9 @@ static bool jsre_init(struct sd_filter *ft) if (!ft->opts->rf_enable) return false; + if (!(ft->opts->jsre_items && ft->opts->jsre_items[0])) + return false; + struct priv *p = talloc_zero(ft, struct priv); ft->priv = p; @@ -84,7 +87,7 @@ static bool jsre_init(struct sd_filter *ft) } talloc_set_destructor(p, destruct_priv); - for (int n = 0; ft->opts->jsre_items && ft->opts->jsre_items[n]; n++) { + for (int n = 0; ft->opts->jsre_items[n]; n++) { char *item = ft->opts->jsre_items[n]; int err = p_regcomp(p->J, p->num_regexes, item, JS_REGEXP_I | JS_REGEXP_M); @@ -112,7 +115,7 @@ static struct demux_packet *jsre_filter(struct sd_filter *ft, bool drop = false; if (ft->opts->rf_plain) - sd_ass_to_plaintext(text, strlen(text), text); + sd_ass_to_plaintext(&text, text); for (int n = 0; n < p->num_regexes; n++) { int found, err = p_regexec(p->J, n, text, &found); |