2
1
mirror of https://github.com/qpdf/qpdf.git synced 2024-12-23 11:28:56 +00:00
Commit Graph

213 Commits

Author SHA1 Message Date
Jay Berkenbilt
df493c352f Refactor optimizePagesTree
Split optimizePagesTree into a simpler top-level routine and a
recursive internal routine.
2012-06-21 15:01:02 -04:00
Tobias Hoffmann
5d3f93be29 Added first version of pages API. 2012-06-21 15:01:02 -04:00
Tobias Hoffmann
47a846a7e0 Added method to clear pages cache. 2012-06-21 15:01:02 -04:00
Jay Berkenbilt
3b413ca87c Fix typo in comment 2012-06-21 15:00:58 -04:00
Jay Berkenbilt
f59ff6fcc2 fix include order for off_t 2012-06-21 14:11:22 -04:00
Jay Berkenbilt
fbe68d63f0 fix doc comment 2012-06-21 10:59:33 -04:00
Jay Berkenbilt
bc1c4bb578 Add QPDF::processFile that takes an open FILE* 2012-06-21 08:00:35 -04:00
Tobias Hoffmann
db7474e0fa Added additional array mutators
Added methods to append to arrays, insert items into arrays, and
replace array contents with a vector of items.
2012-06-20 15:29:44 -04:00
Jay Berkenbilt
b2e6818935 Fix wording error in error message 2012-06-20 15:29:42 -04:00
Jay Berkenbilt
5d4cad9c02 ABI change: fix use of off_t, size_t, and integer types
Significantly improve the code's use of off_t for file offsets, size_t
for memory sizes, and integer types in cases where there has to be
compatibility with external interfaces.  Rework sections of the code
that would have prevented qpdf from working on files larger than 2 (or
maybe 4) GB in size.
2012-06-20 15:20:26 -04:00
Jay Berkenbilt
24e2b2b76f Fix gcc 4.7 warnings about C++11 2012-06-20 15:18:14 -04:00
Jay Berkenbilt
92c94e7df2 Add symbol versioning
For ELF systems, turn on versioned symbols by default, and add a
configure option to enable or disable them.
2012-06-20 15:18:12 -04:00
Jay Berkenbilt
01bcda8974 fix PCRE calls to remove use of deprecated API
pcre_info -> pcre_fullinfo.  Closes issue 3489349.  Thanks Tim Harder.
2012-04-06 21:47:46 -04:00
Jay Berkenbilt
8e9fe21316 Update for 2.3.1 2011-12-28 17:19:40 -05:00
Jay Berkenbilt
92f0207de8 fix MSVC 2010 issues 2011-12-28 16:40:33 -05:00
Jay Berkenbilt
11314a9551 Don't declare any PCRE objects static. 2011-12-28 14:32:33 -05:00
Jay Berkenbilt
1d1d21d3fe ready for 2.3.0 release 2011-08-11 15:34:41 -04:00
Jay Berkenbilt
788f6f7769 fix small logic error surrounding adding newlines; in practice, the logic error would probably never manifest itself without other code changes 2011-08-11 15:22:59 -04:00
Jay Berkenbilt
0abdf5381c fix memory error caught by valgrind 2011-08-11 14:11:27 -04:00
Jay Berkenbilt
76b1659177 enhance PointerHolder so that it can explicitly be told to use delete [] instead of delete, thus making it useful to run valgrind over qpdf during its test suite 2011-08-11 11:57:37 -04:00
Jay Berkenbilt
14fe2e6de3 qpdf_set_info_key, qpdf_get_info_key 2011-08-11 10:48:37 -04:00
Jay Berkenbilt
ce358f103e remove stray XXX comment 2011-08-11 10:17:24 -04:00
Jay Berkenbilt
9a1fad4077 comments 2011-08-10 20:57:52 -04:00
Jay Berkenbilt
a42a4068b5 preserve /EncryptMetadata when copying encryption parameters 2011-08-10 19:47:18 -04:00
Jay Berkenbilt
da39d2b1b1 2.3.a1 2011-08-10 16:48:00 -04:00
Jay Berkenbilt
759c56e1fe implement ability to save PDF to memory, also update ChangeLog 2011-08-10 16:34:29 -04:00
Jay Berkenbilt
655c55f848 implement methods to get dictionary and array contents as map and vector 2011-08-10 13:33:58 -04:00
Jay Berkenbilt
7dc197ef88 implement replace and swap 2011-08-10 12:42:48 -04:00
Jay Berkenbilt
9de1f4826b 2.2.4
git-svn-id: svn+q:///qpdf/trunk@1062 71b93d88-0707-0410-a8cf-f5a4172ac649
2011-06-25 18:39:05 +00:00
Jay Berkenbilt
f5ea42ee59 remove unused offset variable
git-svn-id: svn+q:///qpdf/trunk@1056 71b93d88-0707-0410-a8cf-f5a4172ac649
2011-05-07 13:36:13 +00:00
Jay Berkenbilt
aeb892f99b accept stream keyword with CR only
git-svn-id: svn+q:///qpdf/trunk@1052 71b93d88-0707-0410-a8cf-f5a4172ac649
2011-04-30 21:46:09 +00:00
Jay Berkenbilt
c551b972f6 update version to 2.2.3, update copyright to 2011
git-svn-id: svn+q:///qpdf/trunk@1051 71b93d88-0707-0410-a8cf-f5a4172ac649
2011-04-30 19:19:30 +00:00
Jay Berkenbilt
6405d3928f be less conservative when skipping over inline images in content normalization
git-svn-id: svn+q:///qpdf/trunk@1050 71b93d88-0707-0410-a8cf-f5a4172ac649
2011-04-30 18:20:35 +00:00
Jay Berkenbilt
a8f2248729 handle files with object 0 as a real object
git-svn-id: svn+q:///qpdf/trunk@1049 71b93d88-0707-0410-a8cf-f5a4172ac649
2011-01-31 14:59:42 +00:00
Jay Berkenbilt
c595fd7fbf 2.2.2
git-svn-id: svn+q:///qpdf/trunk@1045 71b93d88-0707-0410-a8cf-f5a4172ac649
2010-10-04 15:26:40 +00:00
Jay Berkenbilt
b36f62a326 add qpdf_read_memory to C API
git-svn-id: svn+q:///qpdf/trunk@1044 71b93d88-0707-0410-a8cf-f5a4172ac649
2010-10-04 15:24:10 +00:00
Jay Berkenbilt
df1fa5291c 2.2.1
git-svn-id: svn+q:///qpdf/trunk@1037 71b93d88-0707-0410-a8cf-f5a4172ac649
2010-10-01 11:07:12 +00:00
Jay Berkenbilt
a72ce95c92 setOutputStreams
git-svn-id: svn+q:///qpdf/trunk@1035 71b93d88-0707-0410-a8cf-f5a4172ac649
2010-10-01 11:02:35 +00:00
Jay Berkenbilt
9f444ffef3 add QPDF::processMemoryFile and API additions to support it
git-svn-id: svn+q:///qpdf/trunk@1034 71b93d88-0707-0410-a8cf-f5a4172ac649
2010-10-01 10:20:38 +00:00
Jay Berkenbilt
a7e269537d update code to new PointerHolder, and reintroduce change that was accidentally backed out
git-svn-id: svn+q:///qpdf/trunk@1031 71b93d88-0707-0410-a8cf-f5a4172ac649
2010-09-24 20:45:18 +00:00
Jay Berkenbilt
ce8b1ba6a5 convert file to a PointerHolder<InputSource> so it could be either a file or a buffer; also fix a bug in BufferInputSource::seek
git-svn-id: svn+q:///qpdf/trunk@1030 71b93d88-0707-0410-a8cf-f5a4172ac649
2010-09-24 19:10:08 +00:00
Jay Berkenbilt
047bcfcaa6 treat empty objects as null
git-svn-id: svn+q:///qpdf/trunk@1027 71b93d88-0707-0410-a8cf-f5a4172ac649
2010-09-06 02:17:55 +00:00
Jay Berkenbilt
b1e0dcff16 handle stream filter abbreviations from table H.1
git-svn-id: svn+q:///qpdf/trunk@1025 71b93d88-0707-0410-a8cf-f5a4172ac649
2010-09-05 15:00:44 +00:00
Jay Berkenbilt
6b4d231245 2.2.0
git-svn-id: svn+q:///qpdf/trunk@1016 71b93d88-0707-0410-a8cf-f5a4172ac649
2010-08-14 16:43:18 +00:00
Jay Berkenbilt
f7a18c42a0 remove stray +
git-svn-id: svn+q:///qpdf/trunk@1012 71b93d88-0707-0410-a8cf-f5a4172ac649
2010-08-14 15:55:17 +00:00
Jay Berkenbilt
bd7261da9b getRawStreamData()
git-svn-id: svn+q:///qpdf/trunk@1010 71b93d88-0707-0410-a8cf-f5a4172ac649
2010-08-09 23:33:40 +00:00
Jay Berkenbilt
1ff024fafc update version numbers
git-svn-id: svn+q:///qpdf/trunk@1004 71b93d88-0707-0410-a8cf-f5a4172ac649
2010-08-08 21:19:58 +00:00
Jay Berkenbilt
cf172cf550 some doc updates, shlib version
git-svn-id: svn+q:///qpdf/trunk@1002 71b93d88-0707-0410-a8cf-f5a4172ac649
2010-08-06 01:38:24 +00:00
Jay Berkenbilt
2dbc1006fb addPageContents
git-svn-id: svn+q:///qpdf/trunk@995 71b93d88-0707-0410-a8cf-f5a4172ac649
2010-08-05 21:06:49 +00:00
Jay Berkenbilt
6f2bd7eb3a newStream
git-svn-id: svn+q:///qpdf/trunk@991 71b93d88-0707-0410-a8cf-f5a4172ac649
2010-08-05 20:20:52 +00:00
Jay Berkenbilt
11df7809af add pipeline-based stream data replacement function
git-svn-id: svn+q:///qpdf/trunk@990 71b93d88-0707-0410-a8cf-f5a4172ac649
2010-08-05 19:04:22 +00:00
Jay Berkenbilt
998a6cbee9 remove stream_data_handler; it wouldn't work as designed. replacement data implemented but not tested
git-svn-id: svn+q:///qpdf/trunk@988 71b93d88-0707-0410-a8cf-f5a4172ac649
2010-08-02 22:40:52 +00:00
Jay Berkenbilt
9a06fc541c ready to implement replacement stream data
git-svn-id: svn+q:///qpdf/trunk@987 71b93d88-0707-0410-a8cf-f5a4172ac649
2010-08-02 22:17:01 +00:00
Jay Berkenbilt
cd1e46616a typo
git-svn-id: svn+q:///qpdf/trunk@985 71b93d88-0707-0410-a8cf-f5a4172ac649
2010-08-02 16:26:08 +00:00
Jay Berkenbilt
00ed5af502 remove use of float for version comparison
git-svn-id: svn+q:///qpdf/trunk@984 71b93d88-0707-0410-a8cf-f5a4172ac649
2010-08-02 16:18:46 +00:00
Jay Berkenbilt
6755a86734 comment on memory leak fix
git-svn-id: svn+q:///qpdf/trunk@979 71b93d88-0707-0410-a8cf-f5a4172ac649
2010-06-06 18:03:21 +00:00
Jay Berkenbilt
9496b2cb20 fix memory leak
git-svn-id: svn+q:///qpdf/trunk@976 71b93d88-0707-0410-a8cf-f5a4172ac649
2010-06-06 13:32:08 +00:00
Jay Berkenbilt
bf75e208e9 eliminate extraneous allocations by not calling makeDirect when we
know an object is already direct


git-svn-id: svn+q:///qpdf/trunk@972 71b93d88-0707-0410-a8cf-f5a4172ac649
2010-06-05 21:00:05 +00:00
Jay Berkenbilt
eef7154412 typo
git-svn-id: svn+q:///qpdf/trunk@971 71b93d88-0707-0410-a8cf-f5a4172ac649
2010-06-05 19:50:30 +00:00
Jay Berkenbilt
62c1b42328 detect degenerate case of empty xref table
git-svn-id: svn+q:///qpdf/trunk@970 71b93d88-0707-0410-a8cf-f5a4172ac649
2010-06-05 19:48:32 +00:00
Jay Berkenbilt
aa093bfabd Use a pointer holder in one place where we were previously just using
a pointer.


git-svn-id: svn+q:///qpdf/trunk@968 71b93d88-0707-0410-a8cf-f5a4172ac649
2010-05-31 17:04:55 +00:00
Jay Berkenbilt
f96c63cf3d 2.1.5
git-svn-id: svn+q:///qpdf/trunk@962 71b93d88-0707-0410-a8cf-f5a4172ac649
2010-04-25 15:05:11 +00:00
Jay Berkenbilt
fc8f93053d don't place restrictions on length of /ID strings
git-svn-id: svn+q:///qpdf/trunk@961 71b93d88-0707-0410-a8cf-f5a4172ac649
2010-04-25 14:55:36 +00:00
Jay Berkenbilt
349c80c895 2.1.4
git-svn-id: svn+q:///qpdf/trunk@958 71b93d88-0707-0410-a8cf-f5a4172ac649
2010-04-18 23:25:12 +00:00
Jay Berkenbilt
b71cef856b fix linearization padding bug for second xref stream as well as first, which was previously fixed
git-svn-id: svn+q:///qpdf/trunk@957 71b93d88-0707-0410-a8cf-f5a4172ac649
2010-04-18 23:19:54 +00:00
Jay Berkenbilt
84353451a3 refactor to isolate pad calculation
git-svn-id: svn+q:///qpdf/trunk@956 71b93d88-0707-0410-a8cf-f5a4172ac649
2010-04-18 23:01:31 +00:00
Jay Berkenbilt
81d922d6f8 soname
git-svn-id: svn+q:///qpdf/trunk@950 71b93d88-0707-0410-a8cf-f5a4172ac649
2010-03-27 16:03:35 +00:00
Jay Berkenbilt
117f690c8e update for 2.1.3
git-svn-id: svn+q:///qpdf/trunk@949 71b93d88-0707-0410-a8cf-f5a4172ac649
2010-03-27 16:03:04 +00:00
Jay Berkenbilt
218900d2c3 flatten scalar references for unreferenced objects
git-svn-id: svn+q:///qpdf/trunk@946 71b93d88-0707-0410-a8cf-f5a4172ac649
2010-03-27 15:42:17 +00:00
Jay Berkenbilt
028f106bee comment about flattenScalarReferences
git-svn-id: svn+q:///qpdf/trunk@945 71b93d88-0707-0410-a8cf-f5a4172ac649
2010-03-27 14:50:11 +00:00
Jay Berkenbilt
95114fe256 pad and hope for the best of AES input buffer is not a multiple of 16
git-svn-id: svn+q:///qpdf/trunk@944 71b93d88-0707-0410-a8cf-f5a4172ac649
2010-03-27 13:17:31 +00:00
Jay Berkenbilt
e5fbae0a37 typo
git-svn-id: svn+q:///qpdf/trunk@940 71b93d88-0707-0410-a8cf-f5a4172ac649
2010-01-25 02:57:58 +00:00
Jay Berkenbilt
1431c05304 update REVISION in shared library version
git-svn-id: svn+q:///qpdf/trunk@936 71b93d88-0707-0410-a8cf-f5a4172ac649
2010-01-25 01:25:52 +00:00
Jay Berkenbilt
375b494e57 update for 2.1.2
git-svn-id: svn+q:///qpdf/trunk@934 71b93d88-0707-0410-a8cf-f5a4172ac649
2010-01-25 01:21:06 +00:00
Jay Berkenbilt
05a6d9669d redo padding calculation for first half xref stream; old calculation
failed to consider the effect of compressing the strema


git-svn-id: svn+q:///qpdf/trunk@932 71b93d88-0707-0410-a8cf-f5a4172ac649
2010-01-24 22:05:16 +00:00
Jay Berkenbilt
8fbba4d48c 2.1.1 -- gcc 4.4 fixes
git-svn-id: svn+q:///qpdf/trunk@925 71b93d88-0707-0410-a8cf-f5a4172ac649
2009-12-14 02:35:31 +00:00
Jay Berkenbilt
91ce55a4e3 2.1
git-svn-id: svn+q:///qpdf/trunk@913 71b93d88-0707-0410-a8cf-f5a4172ac649
2009-10-30 23:58:19 +00:00
Jay Berkenbilt
a80d9d176d add C interface for getting software version
git-svn-id: svn+q:///qpdf/trunk@903 71b93d88-0707-0410-a8cf-f5a4172ac649
2009-10-24 13:23:20 +00:00
Jay Berkenbilt
ace2a031b5 prepare 2.1.rc1 for release
git-svn-id: svn+q:///qpdf/trunk@901 71b93d88-0707-0410-a8cf-f5a4172ac649
2009-10-24 04:47:17 +00:00
Jay Berkenbilt
b1702fb16c more tweaking of C error interface
git-svn-id: svn+q:///qpdf/trunk@894 71b93d88-0707-0410-a8cf-f5a4172ac649
2009-10-23 16:50:22 +00:00
Jay Berkenbilt
7f5d78c2d1 improve C error handling interface
git-svn-id: svn+q:///qpdf/trunk@884 71b93d88-0707-0410-a8cf-f5a4172ac649
2009-10-23 15:27:30 +00:00
Jay Berkenbilt
3c84d496f0 avoid having to include zlib.h in Pl_Flate.hh
git-svn-id: svn+q:///qpdf/trunk@882 71b93d88-0707-0410-a8cf-f5a4172ac649
2009-10-23 14:58:09 +00:00
Jay Berkenbilt
7d6d22db7b remove embedded external libs; replace with different mechanism
git-svn-id: svn+q:///qpdf/trunk@868 71b93d88-0707-0410-a8cf-f5a4172ac649
2009-10-23 03:20:03 +00:00
Jay Berkenbilt
f5d772773e make line buffering os-specific
git-svn-id: svn+q:///qpdf/trunk@852 71b93d88-0707-0410-a8cf-f5a4172ac649
2009-10-21 02:30:15 +00:00
Jay Berkenbilt
27ee889c0e tweak dll stuff again
git-svn-id: svn+q:///qpdf/trunk@851 71b93d88-0707-0410-a8cf-f5a4172ac649
2009-10-21 01:45:13 +00:00
Jay Berkenbilt
748ab301d4 go back to function-based DLL_EXPORT rather than class-based to avoid creation of export files with executables under msvc
git-svn-id: svn+q:///qpdf/trunk@849 71b93d88-0707-0410-a8cf-f5a4172ac649
2009-10-21 00:27:24 +00:00
Jay Berkenbilt
93ba34b17b qpdf-config
git-svn-id: svn+q:///qpdf/trunk@847 71b93d88-0707-0410-a8cf-f5a4172ac649
2009-10-20 02:46:41 +00:00
Jay Berkenbilt
bf6e4ecf00 remove off_t from C API
git-svn-id: svn+q:///qpdf/trunk@846 71b93d88-0707-0410-a8cf-f5a4172ac649
2009-10-20 02:40:08 +00:00
Jay Berkenbilt
e27ac3e982 static
git-svn-id: svn+q:///qpdf/trunk@835 71b93d88-0707-0410-a8cf-f5a4172ac649
2009-10-20 01:35:46 +00:00
Jay Berkenbilt
ad0ab25d66 fix bug in C API, test invalid password specifically
git-svn-id: svn+q:///qpdf/trunk@832 71b93d88-0707-0410-a8cf-f5a4172ac649
2009-10-20 00:59:38 +00:00
Jay Berkenbilt
8b073eed28 checkpoint
git-svn-id: svn+q:///qpdf/trunk@831 71b93d88-0707-0410-a8cf-f5a4172ac649
2009-10-20 00:46:26 +00:00
Jay Berkenbilt
398354b6f0 update C API for error retrieval
git-svn-id: svn+q:///qpdf/trunk@830 71b93d88-0707-0410-a8cf-f5a4172ac649
2009-10-20 00:24:44 +00:00
Jay Berkenbilt
3f8c4c2736 categorize all error messages and include object information if available
git-svn-id: svn+q:///qpdf/trunk@829 71b93d88-0707-0410-a8cf-f5a4172ac649
2009-10-19 23:09:19 +00:00
Jay Berkenbilt
b67a3c15e7 DLL.hh -> DLL.h, move public enumerated types into Constants.h and use them both for C and C++ interfaces
git-svn-id: svn+q:///qpdf/trunk@828 71b93d88-0707-0410-a8cf-f5a4172ac649
2009-10-19 20:17:14 +00:00
Jay Berkenbilt
734ac1e1d2 deal with stream-specific crypt filters
git-svn-id: svn+q:///qpdf/trunk@827 71b93d88-0707-0410-a8cf-f5a4172ac649
2009-10-19 01:58:31 +00:00
Jay Berkenbilt
a8715c495b add C API for R4 encryption
git-svn-id: svn+q:///qpdf/trunk@825 71b93d88-0707-0410-a8cf-f5a4172ac649
2009-10-19 00:36:51 +00:00
Jay Berkenbilt
09175e4578 more testing, bug fix for linearized aes encrypted files
git-svn-id: svn+q:///qpdf/trunk@824 71b93d88-0707-0410-a8cf-f5a4172ac649
2009-10-19 00:17:11 +00:00
Jay Berkenbilt
94131116a9 more notes, testing of cleartext metadata, some crypt filter fixes
git-svn-id: svn+q:///qpdf/trunk@823 71b93d88-0707-0410-a8cf-f5a4172ac649
2009-10-18 19:54:24 +00:00
Jay Berkenbilt
3356b6708d revert /Crypt filter support -- I seemed to have misinterpreted it
git-svn-id: svn+q:///qpdf/trunk@822 71b93d88-0707-0410-a8cf-f5a4172ac649
2009-10-18 19:50:03 +00:00
Jay Berkenbilt
f0211d954c use a simpler seed for the random number generator
git-svn-id: svn+q:///qpdf/trunk@821 71b93d88-0707-0410-a8cf-f5a4172ac649
2009-10-18 16:03:10 +00:00