From f2ff464002e91b1599d7694ce2eaef5b30e8b67c Mon Sep 17 00:00:00 2001 From: Thomas Bruederli <thomas@roundcube.net> Date: Wed, 23 Dec 2015 03:07:34 -0500 Subject: [PATCH] Bump version to 1.1.4; update Changelog --- program/lib/Roundcube/bootstrap.php | 38 +++++++++++++++++++++++++------------- 1 files changed, 25 insertions(+), 13 deletions(-) diff --git a/program/lib/Roundcube/bootstrap.php b/program/lib/Roundcube/bootstrap.php index cc23474..17139ca 100644 --- a/program/lib/Roundcube/bootstrap.php +++ b/program/lib/Roundcube/bootstrap.php @@ -3,7 +3,7 @@ /* +-----------------------------------------------------------------------+ | This file is part of the Roundcube PHP suite | - | Copyright (C) 2005-2014, The Roundcube Dev Team | + | Copyright (C) 2005-2015, The Roundcube Dev Team | | | | Licensed under the GNU General Public License version 3 or | | any later version with exceptions for skins & plugins. | @@ -26,7 +26,7 @@ */ $config = array( - 'error_reporting' => E_ALL & ~E_NOTICE & ~E_STRICT, + 'error_reporting' => E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED, // Some users are not using Installer, so we'll check some // critical PHP settings here. Only these, which doesn't provide // an error/warning in the logs later. See (#1486307). @@ -54,7 +54,7 @@ } // framework constants -define('RCUBE_VERSION', '1.1-git'); +define('RCUBE_VERSION', '1.1.4'); define('RCUBE_CHARSET', 'UTF-8'); if (!defined('RCUBE_LIB_DIR')) { @@ -78,9 +78,11 @@ } // set internal encoding for mbstring extension -if (extension_loaded('mbstring')) { +if (function_exists('mb_internal_encoding')) { mb_internal_encoding(RCUBE_CHARSET); - @mb_regex_encoding(RCUBE_CHARSET); +} +if (function_exists('mb_regex_encoding')) { + mb_regex_encoding(RCUBE_CHARSET); } // make sure the Roundcube lib directory is in the include_path @@ -97,24 +99,34 @@ spl_autoload_register('rcube_autoload'); // set PEAR error handling (will also load the PEAR main class) -PEAR::setErrorHandling(PEAR_ERROR_CALLBACK, 'rcube_pear_error'); +@PEAR::setErrorHandling(PEAR_ERROR_CALLBACK, 'rcube_pear_error'); /** - * Similar function as in_array() but case-insensitive + * Similar function as in_array() but case-insensitive with multibyte support. * - * @param string $needle Needle value - * @param array $heystack Array to search in + * @param string $needle Needle value + * @param array $heystack Array to search in * * @return boolean True if found, False if not */ function in_array_nocase($needle, $haystack) { - $needle = mb_strtolower($needle); - foreach ((array)$haystack as $value) { - if ($needle === mb_strtolower($value)) { - return true; + // use much faster method for ascii + if (is_ascii($needle)) { + foreach ((array) $haystack as $value) { + if (strcasecmp($value, $needle) === 0) { + return true; + } + } + } + else { + $needle = mb_strtolower($needle); + foreach ((array) $haystack as $value) { + if ($needle === mb_strtolower($value)) { + return true; + } } } -- Gitblit v1.9.1