-
Notifications
You must be signed in to change notification settings - Fork 462
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
cupsGetDests applies lpoptions while cupsEnumDests does not #5144
Comments
@albert-astals-cid-kdab cupsEnumDests should be applying the defaults for manually-added queues but won't for remote (discovered) queues that haven't been added yet. Do you have a queue listed in /etc/cups/printers.conf? |
Sorry bit of a newbie, not sure what a queue listed means, here [slightly redacted] contents of my /etc/cups/printers.conf
|
OK, both of those printers are local USB queues and should be reported correctly - cupsEnumDests uses the same private API to report those printers as cupsGetDests2. Investigating... |
@albert-astals-cid-kdab Oh, just to confirm what version of CUPS are you using? |
2.2.5 |
Hmm.... |
OK, I've located the problem and am putting together a fix... |
files (Issue #5144) cups/dest.c: - Add destination array for lpoptions destinations and options. - Move application of options from _cupsGetDests to cups_enum_dests. - Update cups_get_dests to offer a "load all" mode. cups/testdest.c: - Show the default destination - Add --get.
- Fixed a compile issue when PAM is not available (Issue #5253) - Documentation fixes (Issue #5252) - Star Micronics printers need the "unidir" USB quirk rule (Issue #5251) - The scheduler now supports using temporary print queues for older IPP/1.1 print queues like those shared by CUPS 1.3 and earlier (Issue #5241) - The `cupsRasterWritePixels` function did not correctly swap bytes for some formats (Issue #5225) - Added a USB quirk rule for Canon MP280 series printers (Issue #5221) - The `ppdInstallableConflict` tested too many constraints (Issue #5213) - More fixes for printing to old CUPS servers (Issue #5211) - The `cupsCopyDest` function now correctly copies the `is_default` value (Issue #5208) - The scheduler did not work with older versions of uClibc (Issue #5188) - The scheduler now substitutes default values for invalid job attributes when running in "relaxed conformance" mode (Issue #5186) - Fixed PAM module detection and added support for the common PAM definitions (Issue #5185) - Fixed a journald support bug in the scheduler (Issue #5181) - The cups-driverd program incorrectly stopped scanning PPDs as soon as a loop was seen (Issue #5170) - Fixed group validation on OpenBSD (Issue #5166) - Fixed the `ippserver` sample code when threading is disabled or unavailable (Issue #5154) - The `cupsEnumDests` function did not include options from the lpoptions files (Issue #5144) - The `SSLOptions` directive now supports `MinTLS` and `MaxTLS` options to control the minimum and maximum TLS versions that will be allowed, respectively (Issue #5119) - The scheduler did not write out dirty configuration and state files if there were open client connections (Issue #5118) - The `lpadmin` command now provides a better error message when an unsupported System V interface script is used (Issue #5111) - The `lp` and `lpr` commands now provide better error messages when the default printer cannot be found (Issue #5096) - No longer support backslash, question mark, or quotes in printer names (Issue #4966) - The CUPS library now supports the latest HTTP Digest authentication specification including support for SHA-256 (Issue #4862) - The `lpstat` command now reports when new jobs are being held (Issue #4761) - The `lpoptions` command incorrectly saved default options (Issue #4717) - The `ppdLocalizeIPPReason` function incorrectly returned a localized version of "none" (rdar://36566269) - TLS connections now properly timeout (rdar://34938533) - The IPP backend did not properly detect failed PDF prints (rdar://34055474)
It seems to me that calling cupsGetDests applies lpoptions while cupsEnumDests does not.
I have
$ cat .cups/lpoptions
Dest HP_DeskJet_3630_series OutputMode=Photo
And when running the code at [1], i get the output at [2], note how the printouts are exactly the same except for the OutputMode being High-Resolution Photo in one and Normal in the other.
Is this the expected behaviour?
[1] https://pastebin.com/raw/Pft0Xm0h
[2] https://pastebin.com/raw/akNZPWCP
The text was updated successfully, but these errors were encountered: