diff --git a/NEWS b/NEWS index 4abb2b33..5c3c4f5e 100644 --- a/NEWS +++ b/NEWS @@ -7,6 +7,7 @@ NEWS * [network/ssl] fix build error if TLSEXT is disabled * [mod_fastcgi] fix use after free (only triggered if fastcgi debug is active) * [mod_rrdtool] fix invalid read (string not null terminated) + * [mod_dirlisting] fix memory leak if pcre fails - 1.4.34 * [mod_auth] explicitly link ssl for SHA1 (fixes #2517) diff --git a/src/mod_dirlisting.c b/src/mod_dirlisting.c index 8380c05d..327106dc 100644 --- a/src/mod_dirlisting.c +++ b/src/mod_dirlisting.c @@ -730,7 +730,11 @@ static int http_list_directory(server *srv, connection *con, plugin_data *p, buf log_error_write(srv, __FILE__, __LINE__, "sd", "execution error while matching:", n); - return -1; + /* aborting would require a lot of manual cleanup here. + * skip instead (to not leak names that break pcre matching) + */ + exclude_match = 1; + break; } } else {