Bugfix: Work item 16956 - External links in Excel2010 files cause Fatal error

git-svn-id: https://phpexcel.svn.codeplex.com/svn/trunk@83261 2327b42d-5241-43d6-9e2a-de5ac946f064
This commit is contained in:
Mark Baker 2011-11-25 13:34:08 +00:00
parent cdbeceba47
commit f2076cde3f
2 changed files with 10 additions and 0 deletions

View File

@ -3193,6 +3193,11 @@ class PHPExcel_Calculation {
$cellRef = $matches[6].$matches[7].':'.$matches[9].$matches[10]; $cellRef = $matches[6].$matches[7].':'.$matches[9].$matches[10];
if ($matches[2] > '') { if ($matches[2] > '') {
$matches[2] = trim($matches[2],"\"'"); $matches[2] = trim($matches[2],"\"'");
if ((strpos($matches[2],'[') !== false) || (strpos($matches[2],']') !== false)) {
// It's a Reference to an external workbook (not currently supported)
return $this->_raiseFormulaError('Unable to access External Workbook');
}
$matches[2] = trim($matches[2],"\"'");
// echo '$cellRef='.$cellRef.' in worksheet '.$matches[2].'<br />'; // echo '$cellRef='.$cellRef.' in worksheet '.$matches[2].'<br />';
$this->_writeDebug('Evaluating Cell Range '.$cellRef.' in worksheet '.$matches[2]); $this->_writeDebug('Evaluating Cell Range '.$cellRef.' in worksheet '.$matches[2]);
if (!is_null($pCellParent)) { if (!is_null($pCellParent)) {
@ -3222,6 +3227,10 @@ class PHPExcel_Calculation {
$cellRef = $matches[6].$matches[7]; $cellRef = $matches[6].$matches[7];
if ($matches[2] > '') { if ($matches[2] > '') {
$matches[2] = trim($matches[2],"\"'"); $matches[2] = trim($matches[2],"\"'");
if ((strpos($matches[2],'[') !== false) || (strpos($matches[2],']') !== false)) {
// It's a Reference to an external workbook (not currently supported)
return $this->_raiseFormulaError('Unable to access External Workbook');
}
// echo '$cellRef='.$cellRef.' in worksheet '.$matches[2].'<br />'; // echo '$cellRef='.$cellRef.' in worksheet '.$matches[2].'<br />';
$this->_writeDebug('Evaluating Cell '.$cellRef.' in worksheet '.$matches[2]); $this->_writeDebug('Evaluating Cell '.$cellRef.' in worksheet '.$matches[2]);
if (!is_null($pCellParent)) { if (!is_null($pCellParent)) {

View File

@ -41,6 +41,7 @@ Fixed in SVN:
- Bugfix: (MBaker) Work item 16212 - $arguments improperly used in CachedObjectStorage/PHPTemp.php - Bugfix: (MBaker) Work item 16212 - $arguments improperly used in CachedObjectStorage/PHPTemp.php
- Bugfix: (MBaker) Work item 16643 - Bug In Cache System (cell reference when throwing caching errors) - Bugfix: (MBaker) Work item 16643 - Bug In Cache System (cell reference when throwing caching errors)
- Bugfix: (MBaker) Work item 16895 - PHP Invalid index notice on writing excel file when active sheet has been deleted - Bugfix: (MBaker) Work item 16895 - PHP Invalid index notice on writing excel file when active sheet has been deleted
- Bugfix: (MBaker) Work item 16956 - External links in Excel2010 files cause Fatal error
- General: (MBaker) Work item 15405 - Two easy to fix Issues concerning PHPExcel_Token_Stack (l10n/UC) - General: (MBaker) Work item 15405 - Two easy to fix Issues concerning PHPExcel_Token_Stack (l10n/UC)
- General: (MBaker) Work item 15461 - Locale file paths not fit for windows - General: (MBaker) Work item 15461 - Locale file paths not fit for windows
- General: (MBaker) Work item 16643 - Add file directory as a cache option for cache_to_discISAM - General: (MBaker) Work item 16643 - Add file directory as a cache option for cache_to_discISAM