cups-browsed 2.0b4 #8
tillkamppeter
announced in
Announcements
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
In this forth beta we have added a test script, to give
make check
functionality but also for using it in the autopkgtests of debian/Ubuntu and for general CI. Found and fixed many bugs in cups-browsed itself during the development of the script.make test
/make check
, CI, autopkgtest, ...The script test/run-tests.sh creates emulations of IPP printers via
ippeveprinter
(of CUPS 2.x) and checks whether cups-browsed creates corresponding CUPS queues, whether a job to such a queue gets actually printed, and whether cups-browsed removes the queues again when the printers are shut down.implicitclass
backend: If no destination got reported by cups-browsed, retry after one minute, not the standard 5 minutes of CUPS.debug_printf()
: Check for need of log rotation only if log file is set and opened, to avoid a crash.on_printer_modified()
: Added NULL check to avoid a crash.ipp_discoveries_add()
: Ignore duplicate entries.These are most probably caused by a bug in Avahi, having certain discoveries of a printer reported twice and others not. When the printer disappears Avahi reports the disappearal of each discovery correctly, leaving the duplicate entry untreated (removing only one instance of it) and cups-browsed assumes that the printer is still there, keeping its CUPS queue.
update_cups_queues()
: Reset counter for pausing CUPS queue updates.Otherwise after having updated the number of queues supposed to be the maximum for one run of
update_cups_queues()
, cups-browsed will never update any queue again.resolve_callback()
/resolver_wrapper()
: New thread only when printer foundWe move the check which resolver event we have (found/failure) already in the main thread (
resolver_wrapper()
) and launch a new thread only if we have found a new printer and have to investigate whether to add a queue for it or not.resolve_callback()
only initiates this investigation now. This way we do not need to pass the resolver data structure (of typeAvahiServiceResolver*
) into the new thread, which caused segfaults.create_remote_printer_entry()
: Corrected some memory freeing when a printer data structure is deleted, but this has not caused a segfault in the recent tests.configure.ac
: Change deprecatedAC_PROG_LIBTOOL
forLT_INIT
(Pull request configure.ac: Change deprecated AC_PROG_LIBTOOL for LT_INIT #5)configure.ac
: cups-browsed doesn't need C++This discussion was created from the release cups-browsed 2.0b4.
Beta Was this translation helpful? Give feedback.
All reactions