Commit Graph

165 Commits

Author SHA1 Message Date
Dominik Stadler 09fbfd5be4 Bug 66425: Avoid exceptions found via poi-fuzz
Avoid a possible OutOfMemoryException with many child-records

This avoids having too many children in EscherRecords, the limit of
100_000 is arbitrarily chosen and can be adjusted if needed  

Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=62924 and maybe others

git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1919272 13f79535-47bb-0310-9956-ffa450edef68
2024-07-16 05:26:42 +00:00
Dominik Stadler 2582e5e0c1 Bug 66425: Avoid exceptions found via poi-fuzz
Avoid a possible StackOverflowException

This adds support of counting of the "nesting level" into the base 
EscherRecord and thus makes this existing limitation much more effective
as it kicks in for more types of nested records. 

Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=66374

git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1919256 13f79535-47bb-0310-9956-ffa450edef68
2024-07-15 13:02:43 +00:00
PJ Fanning 1c156c4005 [bug-68703] fix issue with XSLFTextRuns in XSLFTableCells
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1916105 13f79535-47bb-0310-9956-ffa450edef68
2024-03-04 12:49:02 +00:00
Dominik Stadler 8e3b60f63d Bug 66425: Avoid exceptions found via poi-fuzz
Prevent StackOverflow via endless nesting

Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=65303

git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1914989 13f79535-47bb-0310-9956-ffa450edef68
2023-12-30 11:11:32 +00:00
Dominik Stadler 56eb1ccff6 Bug 66425: Avoid exceptions found via poi-fuzz
Fix one expected exception-text which is different
on newer Java versions

Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=63143

git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1913384 13f79535-47bb-0310-9956-ffa450edef68
2023-10-27 10:08:04 +00:00
Dominik Stadler c331c5d26a Bug 66425: Avoid a NullPointerException found via oss-fuzz
We try to avoid throwing NullPointerException, but it was possible
to trigger one here with a specially crafted input-file

Should fix https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=62626

git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1912792 13f79535-47bb-0310-9956-ffa450edef68
2023-10-07 22:12:18 +00:00
Dominik Stadler c79fb75cbc Bug 66425: Avoid exceptions found via poi-fuzz
We try to avoid throwing NullPointerException, ClassCastExceptions and StackOverflowException, but it was possible
to trigger them

Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=62548 and https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=62564

git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1912464 13f79535-47bb-0310-9956-ffa450edef68
2023-09-21 15:06:28 +00:00
Dominik Stadler ce919673c4 Bug 66425: Avoid exceptions found via poi-fuzz
We try to avoid throwing NullPointerException, ClassCastExceptions and StackOverflowException, but it was possible
to trigger them

Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=62530 and https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=62491

git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1912433 13f79535-47bb-0310-9956-ffa450edef68
2023-09-20 14:55:19 +00:00
Dominik Stadler 88bbfbb3f7 Bug 66425: Avoid exceptions found via poi-fuzz
We try to avoid throwing NullPointerException, ClassCastExceptions and StackOverflowException, but it was possible
to trigger them

Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=61562
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=62068

git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1912383 13f79535-47bb-0310-9956-ffa450edef68
2023-09-18 06:38:37 +00:00
Dominik Stadler 9e2ce70d2b Bug 66425: Avoid NullPointerExceptions and ClassCastExceptions found via poi-fuzz
We try to avoid throwing NullPointerException and ClassCastExceptions, but it was possible
to trigger them

Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=62414
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=62442
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=62450

git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1912365 13f79535-47bb-0310-9956-ffa450edef68
2023-09-17 14:38:24 +00:00
PJ Fanning 4afcb281ce [bug-67005] XSLFPictureShape - audio-related methods. Thanks to Max
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1912315 13f79535-47bb-0310-9956-ffa450edef68
2023-09-14 14:56:01 +00:00
Dominik Stadler 481c00bc6f Bug 66425: Avoid a ClassCastException found via oss-fuzz
We try to avoid throwing ClassCastException, but it was possible
to trigger one here with a specially crafted input-file

Should fix https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=62170

git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1912252 13f79535-47bb-0310-9956-ffa450edef68
2023-09-11 18:25:13 +00:00
Dominik Stadler dbd8808432 Bug 66425: Avoid a NullPointerException found via oss-fuzz
We try to avoid throwing NullPointerException, but it was possible
to trigger one here with a specially crafted input-file

Should fix https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=62216

git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1912250 13f79535-47bb-0310-9956-ffa450edef68
2023-09-11 18:25:01 +00:00
Dominik Stadler f90415ef0e Bug 66425: Avoid a NullPointerException found via oss-fuzz
We try to avoid throwing NullPointerException, but it was possible
to trigger one here with a specially crafted input-file

Should fix https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=62151

git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1912198 13f79535-47bb-0310-9956-ffa450edef68
2023-09-08 16:02:06 +00:00
Dominik Stadler cdb2ba1398 Bug 66425: Avoid a NullPointerException found via oss-fuzz
We try to avoid throwing NullPointerException, but it was possible
to trigger one here with a specially crafted input-file

Should fix https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=61441

git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1911890 13f79535-47bb-0310-9956-ffa450edef68
2023-08-24 08:48:45 +00:00
Dominik Stadler fd29772be6 Bug 66425: Avoid a ClassCastException found via oss-fuzz
We try to avoid throwing ClassCastException, but it was possible
to trigger one here with a specially crafted input-file

Should fix https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=61578

git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1911860 13f79535-47bb-0310-9956-ffa450edef68
2023-08-23 08:26:27 +00:00
Dominik Stadler ccec6c4bf8 Bug 66425: Avoid a ClassCastException found via oss-fuzz
We try to avoid throwing ClassCastException, but it was possible
to trigger one here with a specially crafted input-file

Should fix https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=61306

git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1911573 13f79535-47bb-0310-9956-ffa450edef68
2023-08-09 10:09:16 +00:00
Dominik Stadler 1b7613329e Bug 66425: Add memory-safeguard in one more place
We try to generally avoid overly large allocations in places
where arrays are allocated. 

We add one more such check for pictures in HSLF.

We might need to increase the used value of 10MB if users report 
larger files being used frequently. 

Overriding this check via IOUtils is possible.

git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1911525 13f79535-47bb-0310-9956-ffa450edef68
2023-08-07 20:35:59 +00:00
Dominik Stadler 8e40aabb18 Bug 66425: Avoid a ClassCastException found via oss-fuzz
We try to avoid throwing ClassCastException, but it was possible
to trigger one here with a specially crafted input-file

Should fix https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=61259

Also fix handling of NullPointerException

git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1911517 13f79535-47bb-0310-9956-ffa450edef68
2023-08-07 16:18:46 +00:00
Dominik Stadler 2c5264277a Bug 66425: Avoid an AssertionError found via oss-fuzz
We try to avoid throwing AssertionError to be triggered by input data, but it was possible
to trigger one here with a specially crafted input-file

Should fix https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=61251

git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1911514 13f79535-47bb-0310-9956-ffa450edef68
2023-08-07 14:32:11 +00:00
PJ Fanning 215da1a1ed add test file
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1906237 13f79535-47bb-0310-9956-ffa450edef68
2022-12-28 07:57:59 +00:00
PJ Fanning 624f834310 [github-404] issue with text runs and styling relating to table cells. Thanks to gffloodg. This closes #404
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1905933 13f79535-47bb-0310-9956-ffa450edef68
2022-12-12 15:18:35 +00:00
PJ Fanning 47e49a3a16 pptx test
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1904334 13f79535-47bb-0310-9956-ffa450edef68
2022-09-29 10:53:01 +00:00
PJ Fanning acd5d04daa [bug-66278] Bug with multiple gradient stops at the exact same location causing a rendering failure (AWT -> not enough colors in gradient). Thanks to Gareth Floodgate. This closes #385
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1904301 13f79535-47bb-0310-9956-ffa450edef68
2022-09-27 12:09:11 +00:00
PJ Fanning 59f51987eb test for TIKA-2605
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1903776 13f79535-47bb-0310-9956-ffa450edef68
2022-08-30 11:26:20 +00:00
PJ Fanning 95c799cfce [bug-65473] extra test
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1903574 13f79535-47bb-0310-9956-ffa450edef68
2022-08-19 13:14:00 +00:00
PJ Fanning f1692cc041 [bug-65473] when copy slide, new slide uses old textrun object reference. Thanks to FlyingPigQAQ. This closes #371
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1903558 13f79535-47bb-0310-9956-ffa450edef68
2022-08-19 08:40:32 +00:00
PJ Fanning 82fa836d1f code to handle smart art rotations
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1903096 13f79535-47bb-0310-9956-ffa450edef68
2022-07-29 08:10:51 +00:00
PJ Fanning cc7fcdfab3 [bug-66176] Integrate SmartArt diagrams from powerpoint presentations. Thanks to Yaseen.
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1902934 13f79535-47bb-0310-9956-ffa450edef68
2022-07-22 09:55:10 +00:00
PJ Fanning 85356f1d54 [bug-65946] remove duplicate Category property from extracted properties
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1898805 13f79535-47bb-0310-9956-ffa450edef68
2022-03-09 20:56:02 +00:00
PJ Fanning f713f551ad [bug-65718] Charts imported without blip fills
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1895487 13f79535-47bb-0310-9956-ffa450edef68
2021-12-02 10:10:17 +00:00
PJ Fanning 53da548689 [bug-65711] add test
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1895407 13f79535-47bb-0310-9956-ffa450edef68
2021-11-29 16:09:06 +00:00
Andreas Beeker d3ff953cf7 #65694 - HSLF - handle date/time fields and formats
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1895248 13f79535-47bb-0310-9956-ffa450edef68
2021-11-22 00:01:31 +00:00
PJ Fanning 20c0ac1637 [bug-65678] add XSLFGraphicFrame hasDiagram
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1894962 13f79535-47bb-0310-9956-ffa450edef68
2021-11-11 23:24:08 +00:00
PJ Fanning 458369a64d [bug-65674] add isVideoFile to XSLFPictureShape
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1894860 13f79535-47bb-0310-9956-ffa450edef68
2021-11-09 10:40:57 +00:00
PJ Fanning 336bce7c82 [bug-65673] add test case (that passes)
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1894830 13f79535-47bb-0310-9956-ffa450edef68
2021-11-08 11:00:59 +00:00
Andreas Beeker db71e2328a #65551 - Incorrect fetching paragraph and text runs props from master shape
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1894140 13f79535-47bb-0310-9956-ffa450edef68
2021-10-11 19:44:47 +00:00
PJ Fanning ac83ff11f4 add test for broken file (5.0.1-RC1 issues)
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1893444 13f79535-47bb-0310-9956-ffa450edef68
2021-09-19 13:05:04 +00:00
PJ Fanning 5d0ea93bb4 add basic support for hdphoto/wdp images in slideshows
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1892653 13f79535-47bb-0310-9956-ffa450edef68
2021-08-27 17:33:39 +00:00
Andreas Beeker 1d594451d8 #65228 - the method getCap() does not work correctly in xslf.usermodel.XSLFTextRun
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1889111 13f79535-47bb-0310-9956-ffa450edef68
2021-04-22 22:09:14 +00:00
Marius Volkhart d1c9a07860 Add the ability to edit HSLFPictureData contents
Pictures can now be edited by calling HSLFPictureData#setData(byte[]). The byte[] should contain the image data as an image viewer might read it.

To enable this functionality, a tighter coupling between the EscherBSERecords of the slideshow and the HSLFPictureData was required. This ensures that changes in image data size are accurately recorded in the records.

In the course of coupling the records and the HSLFPictureData, various scenarios arose where a mapping of records to pictures was non-trivial. Accordingly, the HSLFSlideShowImpl#matchPicturesAndRecords(...) function was added to perform a more sophisticated matching pass. This function is heavily exercised by org.apache.poi.hslf.usermodel.TestBugs.testFile[5] and PPTX2PNG.render[2], as well as the new TestPictures#testSlideshowWithIncorrectOffsets().

Closes #225

git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1887017 13f79535-47bb-0310-9956-ffa450edef68
2021-02-28 23:16:14 +00:00
Andreas Beeker 2125c37d31 #65063 - WMF parsing failed on closed empty polygon
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1885215 13f79535-47bb-0310-9956-ffa450edef68
2021-01-06 23:14:45 +00:00
Nick Burch 6cba0bd437 Test PPT file containing a XLSX via an OLE2 intermediate layer, from Apache Tika
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1882467 13f79535-47bb-0310-9956-ffa450edef68
2020-10-13 22:23:37 +00:00
Andreas Beeker 8acb3adab9 Add more render test images
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1881773 13f79535-47bb-0310-9956-ffa450edef68
2020-09-16 19:37:52 +00:00
Andreas Beeker b00ca445b2 #64693 - POI HwmfGraphics cannot read the embedded document title
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1881322 13f79535-47bb-0310-9956-ffa450edef68
2020-08-30 11:18:21 +00:00
Alain Béarez 8cbc3703c3 Bug 63290: retrieve default run properties from paragraph
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1878147 13f79535-47bb-0310-9956-ffa450edef68
2020-05-27 01:18:15 +00:00
Andreas Beeker 33fd0b22d6 Regression findings - fix missing moveto exception
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1873515 13f79535-47bb-0310-9956-ffa450edef68
2020-02-02 22:53:09 +00:00
PJ Fanning e81a348864 add null check for XSLFShape
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1868318 13f79535-47bb-0310-9956-ffa450edef68
2019-10-12 07:30:56 +00:00
Andreas Beeker ea0e01acc1 Bug 60656 - EMF image support in slideshows
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1858625 13f79535-47bb-0310-9956-ffa450edef68
2019-05-04 23:01:53 +00:00
Tim Allison a5278ccad9 bug 63327 allow retrieval of wmf data embedded in emf
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1857136 13f79535-47bb-0310-9956-ffa450edef68
2019-04-08 19:53:21 +00:00