Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: py-pdf/pypdf
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 6.7.1
Choose a base ref
...
head repository: py-pdf/pypdf
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 6.7.2
Choose a head ref
  • 7 commits
  • 13 files changed
  • 3 contributors

Commits on Feb 19, 2026

  1. Configuration menu
    Copy the full SHA
    4d57836 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    801353a View commit details
    Browse the repository at this point in the history
  3. BUG: Fix wrong LUT size error (#3651)

    Running the image extraction on an image with DeviceCMYK and JPXDecode
    using a custom /Decode entry would previously fail when applying the LUT
    to the image in `_apply_decode`. This was due to converting the image to
    RGB, but the custom LUT having a size of 8 entries.
    
    For my specific (non-disclosable) example everything works correctly
    now, while all existing tests still pass. Honestly, I am not sure
    whether all cases are handled correctly now, but at least the error is
    gone ...
    stefan6419846 authored Feb 19, 2026
    Configuration menu
    Copy the full SHA
    4670513 View commit details
    Browse the repository at this point in the history

Commits on Feb 20, 2026

  1. Configuration menu
    Copy the full SHA
    c707d3c View commit details
    Browse the repository at this point in the history

Commits on Feb 22, 2026

  1. SEC: Prevent infinite loop from circular xref /Prev references (#3655)

    Malformed PDFs can contain circular /Prev references in the xref
    chain (e.g., xref A -> /Prev -> xref B -> /Prev -> xref A).
    This causes _read_xref_tables_and_trailers() to loop forever,
    spamming "Overwriting cache for N M" warnings on every iteration
    as the same objects are re-parsed and re-cached indefinitely.
    
    Fix: Track visited xref offsets in a set. If a startxref value
    has already been visited, log a warning and break the loop.
    
    Closes #3654.
    rampageservices authored Feb 22, 2026
    Configuration menu
    Copy the full SHA
    f0a462d View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    6ef86cb View commit details
    Browse the repository at this point in the history
  3. REL: 6.7.2

    ## What's new
    
    ### Security (SEC)
    - Prevent infinite loop from circular xref /Prev references (#3655) by @rampageservices
    
    ### Bug Fixes (BUG)
    - Fix wrong LUT size error (#3651) by @stefan6419846
    - Fix handling of page boxes defined on `/Pages` (#3650) by @stefan6419846
    
    [Full Changelog](6.7.1...6.7.2)
    stefan6419846 committed Feb 22, 2026
    Configuration menu
    Copy the full SHA
    4f1260f View commit details
    Browse the repository at this point in the history
Loading