diff --git a/CHANGELOG.md b/CHANGELOG.md index f37d67bc05..18fdfc92e1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/). ### Fixed +- Xls file cause the exception during open by Xls reader [#402](https://github.com/PHPOffice/PhpSpreadsheet/issues/402) - Sheet title can contain exclamation mark - [#325](https://github.com/PHPOffice/PhpSpreadsheet/issues/325) ## [1.4.1] - 2018-09-30 diff --git a/src/PhpSpreadsheet/Shared/OLERead.php b/src/PhpSpreadsheet/Shared/OLERead.php index 5755411700..fbfa90cf09 100644 --- a/src/PhpSpreadsheet/Shared/OLERead.php +++ b/src/PhpSpreadsheet/Shared/OLERead.php @@ -326,14 +326,6 @@ private function readPropertySets() */ private static function getInt4d($data, $pos) { - if (trim($data) == '') { - // No data provided - throw new ReaderException('Parameter data is empty.'); - } elseif ($pos < 0) { - // Invalid position - throw new ReaderException('Parameter pos=' . $pos . ' is invalid.'); - } - $len = strlen($data); if ($len < $pos + 4) { $data .= str_repeat("\0", $pos + 4 - $len); diff --git a/tests/PhpSpreadsheetTests/Reader/XlsTest.php b/tests/PhpSpreadsheetTests/Reader/XlsTest.php new file mode 100644 index 0000000000..f629fed112 --- /dev/null +++ b/tests/PhpSpreadsheetTests/Reader/XlsTest.php @@ -0,0 +1,20 @@ +load($filename); + self::assertEquals('Title', $spreadsheet->getSheet(0)->getCell('A1')->getValue()); + } +} diff --git a/tests/PhpSpreadsheetTests/Shared/OLEReadTest.php b/tests/PhpSpreadsheetTests/Shared/OLEReadTest.php new file mode 100644 index 0000000000..a004c4aef5 --- /dev/null +++ b/tests/PhpSpreadsheetTests/Shared/OLEReadTest.php @@ -0,0 +1,28 @@ +read('./data/Reader/XLS/sample.xls'); + self::assertEquals( + file_get_contents($dataDir . 'wrkbook'), + $ole->getStream($ole->wrkbook) + ); + self::assertEquals( + file_get_contents($dataDir . 'summary'), + $ole->getStream($ole->summaryInformation) + ); + self::assertEquals( + file_get_contents($dataDir . 'document'), + $ole->getStream($ole->documentSummaryInformation) + ); + } +} diff --git a/tests/data/Reader/XLS/sample.xls b/tests/data/Reader/XLS/sample.xls new file mode 100644 index 0000000000..65fcba55a8 Binary files /dev/null and b/tests/data/Reader/XLS/sample.xls differ diff --git a/tests/data/Shared/OLERead/document b/tests/data/Shared/OLERead/document new file mode 100755 index 0000000000..e69de29bb2 diff --git a/tests/data/Shared/OLERead/summary b/tests/data/Shared/OLERead/summary new file mode 100755 index 0000000000..e69de29bb2 diff --git a/tests/data/Shared/OLERead/wrkbook b/tests/data/Shared/OLERead/wrkbook new file mode 100755 index 0000000000..ad344aa550 Binary files /dev/null and b/tests/data/Shared/OLERead/wrkbook differ