diff --git a/question/type/multichoice/question.php b/question/type/multichoice/question.php index afca6a47740..8dd70861160 100644 --- a/question/type/multichoice/question.php +++ b/question/type/multichoice/question.php @@ -126,10 +126,10 @@ abstract class qtype_multichoice_base extends question_graded_automatically { } public function make_html_inline($html) { - $html = preg_replace('~\s*

\s*~', '', $html); - $html = preg_replace('~\s*

\s*~', '
', $html); - $html = preg_replace('~
$~', '', $html); - return $html; + $html = preg_replace('~\s*

\s*~u', '', $html); + $html = preg_replace('~\s*

\s*~u', '
', $html); + $html = preg_replace('~()+$~u', '', $html); + return trim($html); } } diff --git a/question/type/multichoice/tests/question_test.php b/question/type/multichoice/tests/question_test.php index fe5ba514efe..cbd3827f5ea 100644 --- a/question/type/multichoice/tests/question_test.php +++ b/question/type/multichoice/tests/question_test.php @@ -147,6 +147,8 @@ class qtype_multichoice_single_question_test extends advanced_testcase { $this->assertEquals("Frog
XXX Graph", $mc->make_html_inline("

Frog

\n\r

XXX Graph

")); + $this->assertEquals('Frog', $mc->make_html_inline('

Frog

')); + $this->assertEquals('Frog
†', $mc->make_html_inline('

Frog

')); } }