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
  • libqpdf
  • QPDFWriter.cc
19 Jul, 2025
4 commits
  • Refactor `Pl_AES_PDF` and `Pl_RC4` constructors to simplify key handling ...
    9faffb74
    Replaced raw key pointer and length parameters with a `std::string` in `Pl_AES_PDF` and `Pl_RC4` constructors for improved safety and clarity. Updated all usage sites accordingly, reducing reliance on manual memory management and redundant conversions.
    m-holger authored
    2025-07-19 19:43:33 +0100  
    Browse File »
  • Refactor `QPDFWriter` to replace `pl::Link` with direct use of `Pipeline` for im… ...
    4278a557
    …proved clarity and reduced indirection in pipeline management.
    m-holger authored
    2025-07-19 18:40:59 +0100  
    Browse File »
  • Refactor `QPDFWriter` to replace `pl::Link` with direct use of `Pipeline` for im… ...
    7b342750
    …proved clarity and reduced indirection in pipeline management.
    m-holger authored
    2025-07-19 18:32:35 +0100  
    Browse File »
  • Refactor stream compression logic in `QPDFWriter` to simplify pipeline activatio… ...
    1457c421
    …n and improve separation of concerns.
    m-holger authored
    2025-07-19 17:53:14 +0100  
    Browse File »

18 Jul, 2025
10 commits
  • Refactor `QPDFWriter` to use `std::unique_ptr` for `m->to_delete` and `m->buffer_pipeline`.
    737c190d
    m-holger authored
    2025-07-18 18:43:37 +0100  
    Browse File »
  • Refactor `Pl_stack` in `QPDFWriter` to streamline MD5 pipeline activation and po… ...
    154d60c4
    …pping, remove redundant `PipelinePopper` usage, and improve encapsulation of MD5 handling.
    
    # Conflicts:
    #	libqpdf/QPDFWriter.cc
    m-holger authored
    2025-07-18 18:38:21 +0100  
    Browse File »
  • Refactor `Pl_stack` in `QPDFWriter` to replace `next_stack_id` with `last_id`, s… ...
    c934608d
    …implifying ID management and ensuring consistent initialization.
    m-holger authored
    2025-07-18 15:21:55 +0100  
    Browse File »
  • 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 File »
  • Refactor `QPDFWriter` pipeline stack to use `std::unique_ptr` for improved memor… ...
    ac4b5e65
    …y management and eliminate redundant `dynamic_cast` logic.
    m-holger authored
    2025-07-18 14:48:50 +0100  
    Browse File »
  • 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 File »
  • Refactor `QPDFWriter` pipeline stack activation to utilize `pl::Link` and stream… ...
    a48eae3c
    …line `linearization pass1` logic  when writing pass1 file
    m-holger authored
    2025-07-18 13:50:30 +0100  
    Browse File »
  • 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 File »
  • Refactor `PipelinePopper` to add manual `pop` method and update its usage for si… ...
    a78d18f7
    …mplified pipeline stack management in `QPDFWriter`.
    m-holger authored
    2025-07-18 13:26:19 +0100  
    Browse File »
  • 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 File »

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 File »

10 Jul, 2025
3 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 File »
  • Refactor `QPDFWriter` to introduce `indent_large`, replace redundant `indent` ha… ...
    d9ae295d
    …ndling, leverage `std::string_view`, and streamline QDF indent logic.
    m-holger authored
    2025-07-10 13:12:52 +0100  
    Browse File »
  • 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 File »

09 Jul, 2025
7 commits
  • 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 File »
  • Refactor `QPDFWriter` to remove `encryption_dictionary` member, streamline encry… ...
    fe122b0b
    …ption dictionary generation, and reduce redundancy in encryption handling logic.
    m-holger authored
    2025-07-09 14:23:18 +0100  
    Browse File »
  • Refactor `QPDFWriter` to replace `m->encrypted` with `m->encryption`, streamline… ...
    fad1399f
    … encryption handling, and reduce redundancy across methods.
    m-holger authored
    2025-07-09 14:18:38 +0100  
    Browse File »
  • 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 File »
  • 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 File »
  • 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 File »
  • 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 File »

22 May, 2025
1 commit
  • Refactor ADBE handling logic in QPDFWriter. ...
    fbcbb781
    Reorganized and cleaned up the logic for managing ADBE entries in the /Extensions dictionary, improving clarity and maintainability. Adjusted object shallow copying to avoid unnecessary copying.
    m-holger authored
    2025-05-22 13:22:32 +0100  
    Browse File »

13 May, 2025
3 commits
  • Refactor code to use modern C++ practices for clarity. ...
    54afdecb
    Replaced raw pointer defaults (e.g., `0`) with `nullptr` for better readability and type-safety. Simplified object initializer syntax using uniform initialization `{}`. These changes enhance code maintainability and ensure modern C++ standards compliance.
    m-holger authored
    2025-05-13 21:53:22 +0100  
    Browse File »
  • Refactor: Replace size and length checks with `.empty()` ...
    9e466084
    Simplified checks for empty containers and strings across the codebase using the `.empty()` method. This improves code readability and adheres to best practices for checking emptiness.
    m-holger authored
    2025-05-13 21:11:00 +0100  
    Browse File »
  • 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 File »

11 May, 2025
2 commits
  • Fix stream filter handling. ...
    8f3f5099
    qpdf permits replacing standard stream filters with user provided filters.
    #1457 incorrectly removed that option.
    m-holger authored
    2025-05-11 18:17:41 +0100  
    Browse File »
  • Don't apply filters to empty stream objects
    cb85d369
    TinyServal authored
    2025-05-11 13:45:32 +0100  
    Browse File »

05 Apr, 2025
1 commit
  • Fix logic around cleartext metadata (fixes #1368) ...
    8720065c
    Only top-level XMP metadata is supposed to be left unencrypted. All
    other metadata is not treated specially.
    Jay Berkenbilt authored
    2025-04-05 18:06:19 -0400  
    Browse File »

30 Mar, 2025
1 commit
  • Refactor QPDFWriter::writeObjectStreamOffsets ...
    cf3264b2
    Rather than converting each (sequential) object id to a string,
    generate a string for the first id and than increment the digits in the
    string.
    m-holger authored
    2025-03-30 10:45:06 +0100  
    Browse File »

25 Mar, 2025
7 commits
  • Amend pl::Count to use a numeric rather than string identifier
    2033b376
    m-holger authored
    2025-03-25 15:04:32 +0000  
    Browse File »
  • Enhance pl::Count to support buffered writing to next
    9c7c7413
    m-holger authored
    2025-03-25 14:51:25 +0000  
    Browse File »
  • Enhance pl::Count to incorporate an end-of-line Pl_String
    80631cb0
    m-holger authored
    2025-03-25 14:44:04 +0000  
    Browse File »
  • Add a private API version of Pl_Count ...
    876c238e
    ... and use it in QPDFWriter and QPDF::generateHintStream.
    m-holger authored
    2025-03-25 14:44:04 +0000  
    Browse File »
  • In QPDFWriter::PipelinePopper remove special handling of Pl_Buffer ...
    05f8281f
    Also, remove redundant QPDFWriter::writeBuffer.
    m-holger authored
    2025-03-25 14:44:04 +0000  
    Browse File »
  • In QPDFWriter::writeHintStream use std::string instead of std::shared_ptr<Buffer>
    953ed4b8
    m-holger authored
    2025-03-25 14:44:04 +0000  
    Browse File »
  • In QPDFWriter::writeLinearized use Pl_String instead of Pl_Buffer
    7cc1e08d
    m-holger authored
    2025-03-25 14:44:04 +0000  
    Browse File »