-
- Introduced a `validate()` method in `QPDFNameTreeObjectHelper`, `QPDFNumberTreeObjectHelper`, and `NNTreeImpl`. - Ensure proper validation of tree keys and values, detecting invalid entries, unsorted keys, and inconsistencies. - Added support for auto-repair in case of validation errors.
-
- Introduced `std::function<bool(QPDFObjectHandle const&)>` to validate tree values. - Updated constructors and methods across `QPDFNameTreeObjectHelper` and `QPDFNumberTreeObjectHelper` to support value validation. - Refactored `NNTreeImpl` to check for invalid values during insertion, iteration, and retrieval. - Improved error handling and reporting for invalid values.
-
… checking, and align with `Array` API conventions.
-
…prove bounds checking
-
…y, modify bounds checks, and adjust affected tests.
-
… to use subscript operators, and simplify object access logic.
-
…reamline object assignment, and introduce constructors for `QPDFObjectHandle`.
-
…eplace `getArrayNItems` with `size`, and improve error handling logic.
-
…lify `withinLimits` logic, and improve code readability with subscript operators.
-
…edundant debug traces.
-
…and improve `findInternal` readability.
-
…`, and simplify member access.
-
…mplify control flow, and update method returns.
-
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.
-
… warnings, and centralize utility methods.
-
… numbers and related variables, replacing `int`, to enhance consistency and avoid unnecessary checked conversions.
-
…r, and revise enum initialization. Clean up unused error handling in linearization logic.
-
…oding/decoding logic, and simplify usage in `JSON_writer` and `QPDF_json`.
-
…view` for encoding/decoding, improving memory efficiency and simplifying buffer management
-
…e` and `finish` logic
-
…dding error counting and leveraging `reconstructed_xref` for improved robustness, limiting the acceptable number of errors for damaged files.
-
…string`, improving performance, simplifying stream data handling, and reducing dependency on `BufferInputSource`.
-
…ancy and improving initialization consistency.
-
…ndant methods for improved code clarity.
-
…ng encapsulation and maintainability.
-
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.
-
…proved clarity and reduced indirection in pipeline management.
-
…proved clarity and reduced indirection in pipeline management.
-
…te encryption handling
-
… overloads, streamline QDF handling, and simplify string and trailer writes.
-
…onsolidate `iterate_rc4` logic, and streamline RC4 key processing.
-
…arrays with `std::string`, and simplify key computation logic.
-
…nline previously separate method, and streamline data encoding logic.
-
…uce redundancy, improve maintainability, and streamline parameter handling.
-
…dom_string`, improve readability of salts and keys handling, and streamline `compute_Perms_value_V5_clear` logic by returning strings directly.