From 072578f2cce7038c920cd9ffa1ae405d1b0d6ccf Mon Sep 17 00:00:00 2001
From: Fil <fil@rezo.net>
Date: Sat, 8 Jul 2006 22:16:03 +0000
Subject: [PATCH] =?UTF-8?q?gros=20bug=20dans=20la=20conversion=20des=20ent?=
 =?UTF-8?q?ites=20HTML=20:=20d=C3=A8s=20qu'une=20conversion=20=C3=A9tait?=
 =?UTF-8?q?=20demand=C3=A9e=20en=20mode=20"secure",=20toutes=20les=20suiva?=
 =?UTF-8?q?ntes=20=C3=A9taient=20aussi=20s=C3=A9curis=C3=A9es,=20ce=20qui?=
 =?UTF-8?q?=20avait=20pour=20cons=C3=A9quence,=20par=20exemple,=20que=20la?=
 =?UTF-8?q?=20syndication=20importait=20non=20plus=20du=20html=20mais=20du?=
 =?UTF-8?q?=20html=20=C3=A9chapp=C3=A9=20(on=20voyait=20les=20tags=20appar?=
 =?UTF-8?q?ents).?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 ecrire/inc/charsets.php | 14 ++++++--------
 1 file changed, 6 insertions(+), 8 deletions(-)

diff --git a/ecrire/inc/charsets.php b/ecrire/inc/charsets.php
index 99091afbe8..6186035f17 100644
--- a/ecrire/inc/charsets.php
+++ b/ecrire/inc/charsets.php
@@ -142,19 +142,17 @@ function html2unicode($texte, $secure=false) {
 	if (!$trans) {
 		global $CHARSET;
 		load_charset('html');
-		
-		if (!$secure) {
-			$CHARSET['html']['amp'] = '&';
-			$CHARSET['html']['quot'] = '"';
-			$CHARSET['html']['lt'] = '<';
-			$CHARSET['html']['gt'] = '>';
-		}
 		foreach ($CHARSET['html'] as $key => $val) {
 			$trans["&$key;"] = $val;
 		}
 	}
 
-	return strtr($texte, $trans);
+	if ($secure)
+		return strtr($texte, $trans);
+	else
+		return strtr(strtr($texte, $trans),
+			array('&amp;'=>'&', '&quot;'=>'"', '&lt;'=>'<', '&gt;'=>'>')
+		);
 }
 
 //
-- 
GitLab