From 2408bd007b0b33334f744c4d578b3a03ed6fdb23 Mon Sep 17 00:00:00 2001 From: Paul Holden Date: Fri, 1 Apr 2022 22:40:49 +0100 Subject: [PATCH] MDL-74408 core: exclude empty patterns in divert email config. --- lib/moodlelib.php | 2 +- lib/tests/moodlelib_test.php | 16 ++++++++++++++++ 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/lib/moodlelib.php b/lib/moodlelib.php index ecaff41a17f..fbe6be5cf18 100644 --- a/lib/moodlelib.php +++ b/lib/moodlelib.php @@ -5871,7 +5871,7 @@ function email_should_be_diverted($email) { return true; } - $patterns = array_map('trim', preg_split("/[\s,]+/", $CFG->divertallemailsexcept)); + $patterns = array_map('trim', preg_split("/[\s,]+/", $CFG->divertallemailsexcept, -1, PREG_SPLIT_NO_EMPTY)); foreach ($patterns as $pattern) { if (preg_match("/$pattern/", $email)) { return false; diff --git a/lib/tests/moodlelib_test.php b/lib/tests/moodlelib_test.php index 57d9cc393be..561de2d4356 100644 --- a/lib/tests/moodlelib_test.php +++ b/lib/tests/moodlelib_test.php @@ -3408,6 +3408,22 @@ EOF; ), true, ), + 'alsodivertsblankline' => array( + 'divertallemailsto' => 'somewhere@elsewhere.com', + 'divertallemailsexcept' => "@dev.com\n", + [ + 'lionel@example.com', + ], + true, + ), + 'divertsexceptionblankline' => array( + 'divertallemailsto' => 'somewhere@elsewhere.com', + 'divertallemailsexcept' => "@example.com\n", + [ + 'lionel@example.com', + ], + false, + ), ); }