Prevent session lock-up caused by filters plugin trying to move messages in an accoun...
[squirrelmail.git] / functions / decode / us_ascii.php
index 700613f3a06a22874235510bdb4a8b3e8f231cf5..3a9f17a083daa10604c7c0ed224d71bb4e5ab845 100644 (file)
@@ -3,15 +3,14 @@
 /**
  * functions/decode/us_ascii.php
  *
- * Copyright (c) 2004 The SquirrelMail Project Team
- * Licensed under the GNU GPL. For full terms see the file COPYING.
- *
  * This file contains us-ascii decoding function that is needed to read
  * us-ascii encoded mails in non-us-ascii locale.
  *
  * Function replaces all 8bit symbols with '?' marks
  *
- * $Id$
+ * @copyright 2004-2014 The SquirrelMail Project Team
+ * @license http://opensource.org/licenses/gpl-license.php GNU Public License
+ * @version $Id$
  * @package squirrelmail
  * @subpackage decode
  */
  * @return string cleaned string
  */
 function charset_decode_us_ascii ($string) {
-    global $default_charset;
-
-    if (strtolower($default_charset) == 'us-ascii')
-        return $string;
-
-    if (! ereg("[\200-\237]", $string) and ! ereg("[\241-\377]", $string) )
+    // don't do decoding when there are no 8bit symbols
+    if (! sq_is8bit($string,'us-ascii'))
         return $string;
 
-    $string = preg_replace("/([\201-\237])/e","'?'",$string);
+    $string = preg_replace("/([\201-\237])/","'?'",$string);
 
     /* I don't want to use 0xA0 (\240) in any ranges. RH73 may dislike it */
     $string = str_replace("\240", '?', $string);
 
-    $string = preg_replace("/([\241-\377])/e","'?'",$string);
+    $string = preg_replace("/([\241-\377])/","'?'",$string);
     return $string;
 }
-?>