Michael R Sweet
0766869ad1
Bump version to 1.3.0.
2024-06-24 07:12:01 -04:00
Michael R Sweet
6c1db141a1
Switch string pool code to an insertion sort - provides a modest 25% improvement
...
to open speeds on typical files.
2024-01-27 20:58:50 -05:00
Michael R Sweet
e882622233
Fix locale support (Issue #61 )
2024-01-27 18:22:16 -05:00
Michael R Sweet
476013706e
Prep for 1.2.0 release, bump copyright.
2024-01-24 10:53:53 -05:00
Michael R Sweet
2a85baaf81
Increase the maximum number of object streams in a file (Issue #58 ) - most files
...
only contain 1 or 2...
Change the implementation of add/find object to use a custom binary insertion
sort algorithm rather than doing a qsort after every addition. This results in
a significant improvement in open speed - from 2371 seconds (about 39.5 minutes)
to 3.1 seconds for one large test file (an ESRI standard).
2023-12-13 12:26:25 -05:00
Michael R Sweet
2b92044504
Support per-object file IDs (Issue #42 )
2023-12-12 21:48:58 -05:00
Michael R Sweet
038fd8686b
Fix trailer dictionary handling (Issue #58 )
...
Fix generation number handling for object 0 (Issue #59 )
2023-12-11 19:56:00 -05:00
Michael R Sweet
c992b2ba89
Update the token reading code to protect against obvious format abuses.
...
Update the xref loading code to protect against looping xref tables.
2023-12-07 17:50:52 -05:00
Michael R Sweet
16c8b830b8
Add pdfioFileCreateNumber/StringObj functions (Issue #14 )
2023-12-05 08:16:41 -05:00
Michael R Sweet
7ff051fc8b
Add pdfioContentTextNewLineShow/f functions (Issue #24 )
2023-12-05 07:49:49 -05:00
Michael R Sweet
927452d1eb
Changelog and exports updates.
2023-12-04 21:22:13 -05:00
Michael R Sweet
41146adbdf
Adopt autoconf (Issue #54 )
2023-12-03 19:16:34 -05:00
Michael R Sweet
cd80c3037d
Prep for 1.1.4 release.
2023-12-03 16:55:57 -05:00
Michael R Sweet
97934ab995
Add ToUnicode map.
2023-11-19 20:49:30 -05:00
Michael R Sweet
088646e1cf
Drop the FEFF prefix on Unicode strings.
2023-11-19 07:30:17 -05:00
Michael R Sweet
d36df63b57
Fix a TrueType CMAP decoding bug and add a NotoSans-Regular test page.
2023-11-18 22:15:52 -05:00
Michael R Sweet
0258384d53
Range check encrypted string length (Issue #52 )
2023-11-18 18:22:11 -05:00
Michael R Sweet
9fec2195d0
Update changelog.
2023-11-15 10:14:02 -05:00
Michael R Sweet
4804db38a5
Fix missing ivlen initializer for 40-bit RC4 (Issue #51 )
2023-11-15 08:43:07 -05:00
Michael R Sweet
600fa4ce59
Fix Unicode font handling (Issue #16 )
2023-11-14 18:19:34 -05:00
Michael R Sweet
43114f43bf
Bump version.
2023-10-10 10:22:27 -04:00
Michael R Sweet
2e91e05d7b
Allow "compound" filters that consist of a single named filter (Issue #47 )
2023-10-10 07:14:12 -04:00
Michael R Sweet
b0a66eef78
Fix reading of PDF files from Crystal Reports (Issue #45 )
2023-10-09 10:04:20 -04:00
Michael R Sweet
19c45871fa
Update pdfioContentSetDashPattern to support setting solid line styles (Issue #41 )
2023-10-06 15:47:27 -04:00
Michael R Sweet
7f6ffcda22
Fix a couple issues with parsing PDF files produced by Microsoft Reporting
...
Services (Issue #46 )
- Odd cross-reference stream containing 3-byte generation number field for this
16-bit value
- Odd empty hex strings
2023-10-06 10:46:30 -04:00
Michael R Sweet
a83f7f50ff
Allow extra whitespace/newlines after stream tokens (Issue #40 )
2023-10-02 05:06:33 -04:00
Michael R Sweet
35c674b633
Fix another build issue.
2023-03-20 10:11:05 -04:00
Michael R Sweet
97d4955666
Fix potential denial-of-service in flate stream code.
2023-03-20 09:27:19 -04:00
Michael R Sweet
e138232a93
Fix build error due to mismatched function declarations.
2023-03-20 08:19:31 -04:00
Michael R Sweet
8d8225f4a1
Fix release date.
2023-02-07 17:10:48 -05:00
Michael R Sweet
7045d9dad9
Bump Windows version numbers and update exports file.
2023-02-06 17:36:54 -05:00
Michael R Sweet
4f10021e7e
Fix denial-of-service attack when reading corrupt PDF files.
2023-02-03 20:39:04 -05:00
Michael R Sweet
57d5894f33
Update pdfioStreamGetToken documentation (Issue #37 )
2023-01-11 17:13:58 -05:00
Michael R Sweet
a3f3bbfe11
Fix pdfioFileGetAuthor, etc. APIs (Issue #33 )
2022-07-12 18:36:08 -04:00
Michael R Sweet
067683cbcd
Add some protection against opening multiple streams in the same file at the same time.
2022-07-04 13:03:11 -04:00
Michael R Sweet
ae9a91719b
Add pdfioContentPathEnd function.
2022-07-03 10:01:10 -04:00
Michael R Sweet
1a17933635
Fix pdfioContentMatrixRotate function.
2022-07-01 20:30:40 -04:00
Michael R Sweet
acea6fdbed
Changelog.
2022-06-27 17:17:44 -04:00
Michael R Sweet
f4b8983c61
Implement pdfioDictIterateKeys API (Issue #31 )
2022-06-27 10:17:00 -04:00
Michael R Sweet
316b0ad559
Add pdfioFileCreateTemporary function (Issue #29 )
2022-05-15 22:52:53 -04:00
Michael R Sweet
cedd7d104f
Changelog update.
2022-03-02 09:47:14 -05:00
Michael R Sweet
f7f2969e3a
Fix pdfioStreamGetToken implementation (wasn't flushing input), update
...
pdfiototext code to better handle different text operators that affect the
location of the text.
2022-03-01 09:18:56 -05:00
Michael R Sweet
93a3fcea6c
Add missing pdfioPageGetNumStreams and pdfioPageOpenStream functions.
...
Add initial version of pdfiototext text extraction utility.
2022-02-28 15:00:25 -05:00
Michael R Sweet
bd2f9d44d4
Prep for 1.0.0 release.
2021-12-14 12:36:33 -05:00
Michael R Sweet
a431d7806f
Fix a few stack/buffer overflow bugs discovered by Bart, Steffan, and Mark from
...
the Radboud University NL (thanks!)
- Add depth argument to all value read functions that recurse
- Add depth argument to page tree loading code
- Validate xref stream sizes individually to avoid out-of-bounds access to local
xref buffer.
2021-11-29 17:46:56 -05:00
Michael R Sweet
c53786e0e1
Changelog.
2021-11-07 11:29:18 -05:00
Michael R Sweet
1d5310a5f3
Bump version to 1.0b2.
2021-11-07 11:15:35 -05:00
Michael R Sweet
22c245ffd1
Update pdfioContentSetDashPattern to accept doubles (Issue #25 )
2021-10-16 09:41:19 -04:00
Michael R Sweet
095a4c10d4
Fix some memory leaks (Issue #23 )
2021-10-16 00:02:31 -04:00
Michael R Sweet
d1e8c966ed
Fix some Coverity-detected issues.
2021-10-01 11:38:04 -04:00