summaryrefslogtreecommitdiff
path: root/program/include/main.inc
diff options
context:
space:
mode:
Diffstat (limited to 'program/include/main.inc')
-rw-r--r--program/include/main.inc11
1 files changed, 8 insertions, 3 deletions
diff --git a/program/include/main.inc b/program/include/main.inc
index 86fe578ca..9adcd4cfc 100644
--- a/program/include/main.inc
+++ b/program/include/main.inc
@@ -186,6 +186,12 @@ function rcube_charset_convert($str, $from, $to=NULL)
$to = $to==NULL ? strtoupper(RCMAIL_CHARSET) : strtoupper($to);
$error = false; $conv = null;
+ # RFC1642
+ if ($from == 'UNICODE-1-1-UTF-7')
+ $from = 'UTF-7';
+ if ($to == 'UNICODE-1-1-UTF-7')
+ $to = 'UTF-7';
+
if ($from==$to || $str=='' || empty($from))
return $str;
@@ -209,7 +215,6 @@ function rcube_charset_convert($str, $from, $to=NULL)
}
}
-
if (is_null($mbstring_loaded))
$mbstring_loaded = extension_loaded('mbstring');
@@ -232,8 +237,8 @@ function rcube_charset_convert($str, $from, $to=NULL)
return $out;
}
}
-
-
+
+ # try to convert with custom classes
if (class_exists('utf8'))
$conv = new utf8();