Topic: Bug: htmlentities messes code blocks
Greek characters are unicode supported. If entered as regulart text, they make no difference than other text.
If entered in a <code> block they are presented with their entity form. This results to
π = 3.14
φ = 1.62instead of
π = 3.14
φ = 1.62The problem lies into safe_slash_html() function inside admin/inc/basic.php where htmlentities is used. htmlentities() and htmlspecialcharacters() are identical in all ways, except with htmlentities(), all characters which have HTML character entity equivalents are translated into these entities.
Fix:
FIND
function safe_slash_html($text) {
if (get_magic_quotes_gpc()==0) {
$text = addslashes(htmlentities($text, ENT_QUOTES, 'UTF-8'));
} else {
$text = htmlentities($text, ENT_QUOTES, 'UTF-8');
}
return $text;
}REPLACE, WITH
function safe_slash_html($text) {
if (get_magic_quotes_gpc()==0) {
$text = addslashes(htmlspecialchars($text, ENT_QUOTES, 'UTF-8'));
} else {
$text = htmlspecialchars($text, ENT_QUOTES, 'UTF-8');
}
return $text;
}
Download


