diff --git a/lib/moodlelib.php b/lib/moodlelib.php index 1adab8de923..5e62614f4e8 100644 --- a/lib/moodlelib.php +++ b/lib/moodlelib.php @@ -5874,7 +5874,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, + ), ); }