Skip to content

libcupsfilters 2.2.1-2 breaks custom continuous media on Brother QL-820NWB #217

Description

@patroza

Summary

After upgrading Arch Linux libcupsfilters from 2.1.1-4 to
2.2.1-2, print jobs to a Brother QL-820NWB using the
Foomatic/ptouch-ql driver fail.

The printer reports that the installed roll is the wrong type. CUPS
records job-canceled-at-device / other-error.

Downgrading only libcupsfilters to 2.1.1-4 and restarting CUPS
immediately restores printing with the same queue, documents, and media
settings.

Configuration

  • Printer: Brother QL-820NWB
  • Installed media: 62 mm continuous roll
  • Driver: Brother QL-820NWB Foomatic/ptouch-ql (recommended)
  • printer-driver-ptouch 1.7.1-1
  • PageSize=Custom.61.98x183.90mm
  • MediaType=Tape
  • Transport: DNS-SD/IPP

Other package versions:

  • cups 2:2.4.19-1
  • cups-filters 2.0.1-2
  • libppd 2.1.1-2
  • printer-driver-ptouch 1.7.1-1

Reproduction

  1. Install libcupsfilters 2.2.1-2.

  2. Restart CUPS.

  3. Submit a job using:

    • PageSize=Custom.61.98x183.90mm
    • MediaType=Tape
  4. The printer rejects the job as using the wrong roll type.

  5. CUPS reports job-canceled-at-device / other-error.

  6. Downgrade only libcupsfilters:

    sudo pacman -U /var/cache/pacman/pkg/libcupsfilters-2.1.1-4-x86_64.pkg.tar.zst
    sudo systemctl restart cups
    
  7. Resubmit the same jobs. They print successfully.

Local A/B results

With libcupsfilters 2.2.1-2:

  • Job 4: canceled-at-device
  • Job 5: canceled-at-device

Immediately after downgrading to 2.1.1-4:

  • Job 9: job-completed-successfully
  • Job 10: job-completed-successfully

The printer configuration and printer-driver-ptouch package did not
change between these tests.

Expected behavior

The custom-length job should print on the installed 62 mm continuous
roll, as it does with libcupsfilters 2.1.1-4.

Actual behavior

The printer detects a media mismatch and cancels the job.

Additional notes

foomatic-rip links against libcupsfilters.so.2, so changing only
libcupsfilters affects this legacy PPD/filter path.

Upstream libcupsfilters 2.2.0 substantially rewrote PDF and raster
processing, replacing QPDF/libpoppler internals with PDFio. Therefore
this may be a custom-page-size or raster-header regression introduced
in 2.2.0 and included in 2.2.1.

I can provide paired debug logs or run a 2.2.0-versus-2.1.1 test if
needed.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions