Logo white

OpenSystemsDevelopment / qpdf

Sign in
  • Sign in
  • Project
  • Files
  • Commits
  • Network
  • Graphs
  • Milestones
  • Issues 0
  • Merge Requests 0
  • Labels
  • Wiki
  • Commits 4,691
  • Compare
  • Branches 1
  • Tags 0
  • qpdf
  • include
20 Aug, 2025
2 commits
  • Add const subscript operators to `Array`for improved object access
    5438f088
    m-holger authored
    2025-08-20 11:48:20 +0100  
    Browse Dir »
  • Add move and copy operations to `BaseHandle` and `Array` private API classes, st… ...
    1f3f872d
    …reamline object assignment, and introduce constructors for `QPDFObjectHandle`.
    m-holger authored
    2025-08-20 11:32:32 +0100  
    Browse Dir »

17 Aug, 2025
1 commit
  • Add private-API subscript operators to `QPDFObjectHandle` for size_t and int ...
    f42de31c
    Implement subscript operators (`operator[]`) to provide indexed access to `QPDFObjectHandle` for both `size_t` and `int` types.
    m-holger authored
    2025-08-17 14:06:38 +0100  
    Browse Dir »

10 Aug, 2025
1 commit
  • Refactor linearization checks: change `checkLinearizationInternal` to `void`, si… ...
    039abac4
    …mplify control flow, and update method returns.
    m-holger authored
    2025-08-10 12:33:07 +0100  
    Browse Dir »

09 Aug, 2025
2 commits
  • Add `empty` method to `BaseHandle` as a utility for checking zero size
    77bd34aa
    m-holger authored
    2025-08-09 17:18:52 +0100  
    Browse Dir »
  • Add new method `BaseHandle::size` ...
    1ec18f20
    Refactor array handling in `QPDFObjectHandle`: replace `int` with `size_t` for size and index operations, introduce utility functions for type conversions, and simplify sparse array logic.
    m-holger authored
    2025-08-09 17:16:54 +0100  
    Browse Dir »

08 Aug, 2025
1 commit
  • Refactor `QPDFObjectHandle` and `BaseHandle`: streamline type handling, simplify… ...
    decc7d3c
    … warnings, and centralize utility methods.
    m-holger authored
    2025-08-08 23:11:20 +0100  
    Browse Dir »

07 Aug, 2025
1 commit
  • Disallow `--deterministic-id` with encrypted output and improve error handling f… ...
    b46d4b98
    …or deterministic ID generation (fixes #1235).
    m-holger authored
    2025-08-07 19:09:16 +0100  
    Browse Dir »

03 Aug, 2025
1 commit
  • Update `unparseChild` and `unparseObject` in `QPDFWriter` to use `size_t` for `l… ...
    6020af9f
    …evel` and add `const&` to `child` parameter.
    m-holger authored
    2025-08-03 11:51:21 +0100  
    Browse Dir »

25 Jul, 2025
1 commit
  • Refactor `NNTree` to encapsulate warning and error handling into `NNTreeImpl`, a… ...
    9f9f01d5
    …dding error counting and leveraging `reconstructed_xref` for improved robustness, limiting the acceptable number of errors for damaged files.
    m-holger authored
    2025-07-25 00:34:41 +0100  
    Browse Dir »

20 Jul, 2025
2 commits
  • In FUTURE, refactor `BufferInputSource` to use is::OffsetBuffer.
    799080b0
    m-holger authored
    2025-07-20 17:55:46 +0100  
    Browse Dir »
  • Refactor `QPDFObjectHandle` and related classes to replace `Buffer` usage with `… ...
    c436f035
    …std::string_view`, improving performance and code clarity.
    m-holger authored
    2025-07-20 15:07:24 +0100  
    Browse Dir »

18 Jul, 2025
4 commits
  • Refactor `PipelinePopper` to improve encapsulation by moving it into `Pl_stack` as a nested class.
    5e791513
    m-holger authored
    2025-07-18 15:12:00 +0100  
    Browse Dir »
  • Refactor `QPDFWriter` pipeline stack logic to use `std::unique_ptr` for `Pl_MD5`… ...
    63dae8ec
    …, improving encapsulation and memory management. Remove the now redundant `pushMD5Pipeline` method and streamline MD5 activation.
    m-holger authored
    2025-07-18 14:04:59 +0100  
    Browse Dir »
  • Refactor `QPDFWriter` encryption logic to simplify pipeline writes and consolida… ...
    46cb7392
    …te encryption handling
    m-holger authored
    2025-07-18 13:40:19 +0100  
    Browse Dir »
  • Refactor `PipelinePopper` to use `Pl_stack` for improved encapsulation and simpl… ...
    613c1221
    …ify pipeline stack management
    m-holger authored
    2025-07-18 13:20:41 +0100  
    Browse Dir »

17 Jul, 2025
1 commit
  • Refactor QPDFWriter pipeline stack logic for improved encapsulation ...
    83144b29
    Encapsulated pipeline stack management into a dedicated `Pl_stack` class within `QPDFWriter::Members`. Reorganized related methods to streamline and simplify initialization and activation of pipelines, removing redundant code.
    m-holger authored
    2025-07-17 22:23:10 +0100  
    Browse Dir »

10 Jul, 2025
2 commits
  • Refactor `QPDFWriter` to add `write_name` and `write_string` methods, replace re… ...
    e3fdb578
    …dundant normalization and string unparse logic across multiple write calls.
    m-holger authored
    2025-07-10 13:12:58 +0100  
    Browse Dir »
  • Refactor `QPDFWriter` to consolidate `write*` methods into parameterized `write`… ...
    485399c7
    … overloads, streamline QDF handling, and simplify string and trailer writes.
    m-holger authored
    2025-07-10 13:12:24 +0100  
    Browse Dir »

09 Jul, 2025
12 commits
  • Refactor `compute_O_rc4_key` to return `std::string`, replace raw character arra… ...
    e623caf2
    …ys with `std::string`, and simplify related password handling logic.
    m-holger authored
    2025-07-09 14:48:39 +0100  
    Browse Dir »
  • Refactor encryption handling to streamline key computation, centralize version-b… ...
    20c2f021
    …ased logic in `setEncryptionMinimumVersion`, and reduce redundancy across `QPDFWriter` methods.
    m-holger authored
    2025-07-09 14:23:36 +0100  
    Browse Dir »
  • Refactor encryption permissions handling to replace `std::set` with `std::bitset… ...
    2055837e
    …`, simplify method signatures, and centralize logic in `QPDF::EncryptionData` for improved maintainability.
    m-holger authored
    2025-07-09 14:18:34 +0100  
    Browse Dir »
  • Refactor `QPDFWriter` to remove `encrypt_metadata` member, centralize its handli… ...
    80093a05
    …ng in method parameters, and simplify encryption logic for improved maintainability and reduced redundancy.
    m-holger authored
    2025-07-09 14:18:26 +0100  
    Browse Dir »
  • Refactor and centralize encryption-related logic in `QPDFWriter::Members` to red… ...
    232c037a
    …uce redundancy, improve maintainability, and streamline parameter handling.
    m-holger authored
    2025-07-09 14:18:22 +0100  
    Browse Dir »
  • Refactor encryption data methods to reduce redundancy, streamline parameter hand… ...
    c8fd2f9b
    …ling, and improve maintainability.
    m-holger authored
    2025-07-09 14:17:59 +0100  
    Browse Dir »
  • Remove redundant `compute_U_UE_value_V5`, `compute_O_OE_value_V5`, and `compute_… ...
    4635a59e
    …Perms_value_V5` methods; inline their logic into `setV5EncryptionParameters` to simplify encryption data processing.
    m-holger authored
    2025-07-09 14:17:53 +0100  
    Browse Dir »
  • Refactor `QPDF_encryption` to simplify random string generation using `util::ran… ...
    11266b14
    …dom_string`, improve readability of salts and keys handling, and streamline `compute_Perms_value_V5_clear` logic by returning strings directly.
    m-holger authored
    2025-07-09 14:17:45 +0100  
    Browse Dir »
  • Refactor encryption permissions handling by replacing integer-based logic with `… ...
    8417be17
    …std::bitset`, reorganizing related methods, and simplifying access to improve clarity and maintainability.
    m-holger authored
    2025-07-09 14:17:35 +0100  
    Browse Dir »
  • Refactor `EncryptionParameters` to encapsulate crypt filter interpretation logic… ...
    09df3969
    …, transition `interpretCF` to a class method, and eliminate redundant parameter passing for improved clarity and maintainability.
    m-holger authored
    2025-07-09 14:17:20 +0100  
    Browse Dir »
  • Refactor encryption initialization by encapsulating logic in `EncryptionParamete… ...
    a051a162
    …rs::initialize` and replacing shared pointers with references for improved clarity and maintainability.
    m-holger authored
    2025-07-09 14:14:41 +0100  
    Browse Dir »
  • Refactor `QPDF::EncryptionData` to encapsulate encryption logic, reduce redundan… ...
    cb3c4c55
    …t parameter passing, and improve maintainability. Change static functions and QPDF methods to EncryptionData methods.
    m-holger authored
    2025-07-09 09:46:52 +0100  
    Browse Dir »

30 Jun, 2025
2 commits
  • Refactor object reading logic in `QPDF` for clarity and improved maintainability ...
    1d3fa912
    Simplify `readObjectAtOffset` by splitting responsibilities into separate functions: `read_object_start` and a streamlined `readObjectAtOffset`. Remove redundant parameters and improve code readability, ensuring better modularity for object reading operations.
    m-holger authored
    2025-06-30 19:15:32 +0100  
    Browse Dir »
  • Refactor `Pl_DCT` buffer management to use `std::string` and simplify compressio… ...
    44f726da
    …n/decompression logic. Remove redundant `Buffer` class dependency.
    m-holger authored
    2025-06-30 17:30:54 +0100  
    Browse Dir »

13 May, 2025
7 commits
  • Add `final` specifiers and initialize member variables. ...
    b0ceea46
    Refactored several classes to use C++11 `final` specifiers for inheritance restrictions and added default member initializations. These changes enhance code clarity, improve safety, and ensure modern coding practices.
    m-holger authored
    2025-05-13 21:38:32 +0100  
    Browse Dir »
  • In QPDFJob::UnderOverlay refactor password handling to use std::string directly ...
    183e4407
    Replaced std::shared_ptr<char> with std::string for passwords in QPDFJob. This simplifies memory management and aligns the implementation with modern C++ standards, improving code readability and maintainability.
    m-holger authored
    2025-05-13 21:11:00 +0100  
    Browse Dir »
  • Refactor password handling in QPDFJob::PageSpec. ...
    74e76df0
    Replaced shared pointer usage with a plain std::string for passwords in PageSpec to simplify code and enhance readability. Updated relevant logic and function calls to align with this change, removing unnecessary shared pointer management. Updated TODO to reflect completion of this modernization step.
    m-holger authored
    2025-05-13 21:11:00 +0100  
    Browse Dir »
  • In QPDFJob refactor password handling to use std::string instead of shared_ptr. ...
    6e2a07e1
    Replaced `std::shared_ptr<char>` with `std::string` for password fields to simplify memory management and improve clarity. Updated relevant method implementations and function calls accordingly. This change ensures more straightforward and safer password handling throughout the codebase.
    m-holger authored
    2025-05-13 21:11:00 +0100  
    Browse Dir »
  • Refactor input file handling to use std::string and flag ...
    b53923d1
    Replaced raw shared pointers with std::string for `infilename` to improve simplicity and readability. Added a boolean `empty_input` flag to explicitly track empty input cases. Adjusted related logic and function calls accordingly for consistency.
    m-holger authored
    2025-05-13 21:11:00 +0100  
    Browse Dir »
  • In QPDFJob refactor output file handling to use std::string instead of shared_ptr<char> ...
    3a42f63a
    Replaced shared_ptr<char> with std::string for `outfilename` in QPDFJob, simplifying its usage and reducing unnecessary memory management overhead. Updated related conditional checks and logic to align with the updated type. These changes improve code readability and maintainability.
    m-holger authored
    2025-05-13 21:11:00 +0100  
    Browse Dir »
  • Replace `count()` with `contains()` for cleaner and more efficient checks ...
    1d7ebddb
    Converted multiple occurrences of `count()` to `contains()` throughout the codebase where the goal was to check key existence in containers. This improves code readability and aligns with modern C++ practices, particularly with C++20, making the intent more explicit and potentially aiding performance.
    m-holger authored
    2025-05-13 21:03:17 +0100  
    Browse Dir »