diff --git a/htdocs/includes/boxes/box_external_rss.php b/htdocs/includes/boxes/box_external_rss.php
index 5ae1e8502cd5c5b2e989c6c3fbf1bce6b119cba8..611d2ee6080907563398168eca1fcb1f55effdc5 100644
--- a/htdocs/includes/boxes/box_external_rss.php
+++ b/htdocs/includes/boxes/box_external_rss.php
@@ -91,7 +91,15 @@ class box_external_rss extends ModeleBoxes {
         {
             $item = $rss->items[$i];
             $href = $item['link'];
-            $title = utf8_decode(urldecode($item['title']));
+            $result = $this->utf8_check(urldecode($item['title']));
+            if ($result)
+            {
+            	$title = utf8_decode(urldecode($item['title']));
+            }
+            else
+            {
+            	$title = (urldecode($item['title']));
+            }
             $title=ereg_replace("([[:alnum:]])\?([[:alnum:]])","\\1'\\2",$title);   // G�re probl�me des apostrophes mal cod�e/d�cod�e par utf8
             $title=ereg_replace("^\s+","",$title);                                  // Supprime espaces de d�but
             $this->info_box_contents["$href"]="$title";
@@ -102,6 +110,27 @@ class box_external_rss extends ModeleBoxes {
             'target' => 'newrss');
         }
     }
+    
+    /**
+     *      \brief      V�rifie si le flux est en UTF8
+     *      \param      $Str        chaine � v�rifier
+     */
+    function utf8_check($Str) {
+    	for ($i=0; $i<strlen($Str); $i++) {
+    		if (ord($Str[$i]) < 0x80) continue; # 0bbbbbbb
+    		elseif ((ord($Str[$i]) & 0xE0) == 0xC0) $n=1; # 110bbbbb
+    		elseif ((ord($Str[$i]) & 0xF0) == 0xE0) $n=2; # 1110bbbb
+    		elseif ((ord($Str[$i]) & 0xF8) == 0xF0) $n=3; # 11110bbb
+    		elseif ((ord($Str[$i]) & 0xFC) == 0xF8) $n=4; # 111110bb
+    		elseif ((ord($Str[$i]) & 0xFE) == 0xFC) $n=5; # 1111110b
+    		else return false; # Does not match any model
+    		for ($j=0; $j<$n; $j++) { # n bytes matching 10bbbbbb follow ?
+    			if ((++$i == strlen($Str)) || ((ord($Str[$i]) & 0xC0) != 0x80))
+    			return false;
+    		}
+    	}
+    	return true;
+    }
 
     function showBox()
     {