Only load list of locale files for calculation engine if setLocale() is explicitly called
This commit is contained in:
parent
420b344d44
commit
979aa760c0
|
@ -1681,14 +1681,6 @@ class PHPExcel_Calculation {
|
|||
|
||||
|
||||
private function __construct() {
|
||||
$localeFileDirectory = PHPEXCEL_ROOT.'PHPExcel/locale/';
|
||||
foreach (glob($localeFileDirectory.'/*',GLOB_ONLYDIR) as $filename) {
|
||||
$filename = substr($filename,strlen($localeFileDirectory)+1);
|
||||
if ($filename != 'en') {
|
||||
self::$_validLocaleLanguages[] = $filename;
|
||||
}
|
||||
}
|
||||
|
||||
$setPrecision = (PHP_INT_SIZE == 4) ? 12 : 16;
|
||||
$this->_savedPrecision = ini_get('precision');
|
||||
if ($this->_savedPrecision < $setPrecision) {
|
||||
|
@ -1703,6 +1695,16 @@ class PHPExcel_Calculation {
|
|||
}
|
||||
}
|
||||
|
||||
private static function _loadLocales() {
|
||||
$localeFileDirectory = PHPEXCEL_ROOT.'PHPExcel/locale/';
|
||||
foreach (glob($localeFileDirectory.'/*',GLOB_ONLYDIR) as $filename) {
|
||||
$filename = substr($filename,strlen($localeFileDirectory)+1);
|
||||
if ($filename != 'en') {
|
||||
self::$_validLocaleLanguages[] = $filename;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Get an instance of this class
|
||||
*
|
||||
|
@ -1883,6 +1885,9 @@ class PHPExcel_Calculation {
|
|||
list($language) = explode('_',$locale);
|
||||
}
|
||||
|
||||
if (count(self::$_validLocaleLanguages) == 1)
|
||||
self::_loadLocales();
|
||||
|
||||
// Test whether we have any language data for this language (any locale)
|
||||
if (in_array($language,self::$_validLocaleLanguages)) {
|
||||
// initialise language/locale settings
|
||||
|
|
Loading…
Reference in New Issue