- The scheduler did not clean out completed jobs when PreserveJobHistory
was turned off (STR #3425).
This commit is contained in:
parent
587ec4e0dc
commit
547466357f
100
cups-str3425.patch
Normal file
100
cups-str3425.patch
Normal file
@ -0,0 +1,100 @@
|
|||||||
|
diff -up cups-1.4.2/scheduler/job.c.str3425 cups-1.4.2/scheduler/job.c
|
||||||
|
--- cups-1.4.2/scheduler/job.c.str3425 2009-12-08 12:23:15.694500898 +0000
|
||||||
|
+++ cups-1.4.2/scheduler/job.c 2009-12-08 12:23:35.005500733 +0000
|
||||||
|
@@ -444,11 +444,11 @@ cupsdCleanJobs(void)
|
||||||
|
cupsd_job_t *job; /* Current job */
|
||||||
|
|
||||||
|
|
||||||
|
- if (MaxJobs <= 0)
|
||||||
|
+ if (MaxJobs <= 0 && JobHistory)
|
||||||
|
return;
|
||||||
|
|
||||||
|
for (job = (cupsd_job_t *)cupsArrayFirst(Jobs);
|
||||||
|
- job && cupsArrayCount(Jobs) >= MaxJobs;
|
||||||
|
+ job && (cupsArrayCount(Jobs) >= MaxJobs || !JobHistory);
|
||||||
|
job = (cupsd_job_t *)cupsArrayNext(Jobs))
|
||||||
|
if (job->state_value >= IPP_JOB_CANCELED && !job->printer)
|
||||||
|
cupsdDeleteJob(job, CUPSD_JOB_PURGE);
|
||||||
|
@@ -2670,8 +2670,6 @@ cupsdSetJobState(
|
||||||
|
job->dirty = 1;
|
||||||
|
cupsdMarkDirty(CUPSD_DIRTY_JOBS);
|
||||||
|
}
|
||||||
|
- else if (!job->printer)
|
||||||
|
- cupsdDeleteJob(job, CUPSD_JOB_PURGE);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
diff -up cups-1.4.2/scheduler/main.c.str3425 cups-1.4.2/scheduler/main.c
|
||||||
|
--- cups-1.4.2/scheduler/main.c.str3425 2009-12-08 12:23:15.695501397 +0000
|
||||||
|
+++ cups-1.4.2/scheduler/main.c 2009-12-08 12:23:35.007501250 +0000
|
||||||
|
@@ -397,7 +397,7 @@ main(int argc, /* I - Number of comm
|
||||||
|
* parent's file descriptors to be blocking. This is a workaround for a
|
||||||
|
* limitation of userland libpthread on OpenBSD.
|
||||||
|
*/
|
||||||
|
-
|
||||||
|
+
|
||||||
|
_thread_sys_closefrom(0);
|
||||||
|
#endif /* __OpenBSD__ */
|
||||||
|
|
||||||
|
@@ -844,8 +844,8 @@ main(int argc, /* I - Number of comm
|
||||||
|
|
||||||
|
if (timeout == 86400 && Launchd && LaunchdTimeout && !NumPolled &&
|
||||||
|
!cupsArrayCount(ActiveJobs) &&
|
||||||
|
- (!Browsing ||
|
||||||
|
- (!BrowseRemoteProtocols &&
|
||||||
|
+ (!Browsing ||
|
||||||
|
+ (!BrowseRemoteProtocols &&
|
||||||
|
(!NumBrowsers || !BrowseLocalProtocols ||
|
||||||
|
cupsArrayCount(Printers) == 0))))
|
||||||
|
{
|
||||||
|
@@ -1073,6 +1073,7 @@ main(int argc, /* I - Number of comm
|
||||||
|
if ((current_time - senddoc_time) >= 10)
|
||||||
|
{
|
||||||
|
cupsdCheckJobs();
|
||||||
|
+ cupsdCleanJobs();
|
||||||
|
senddoc_time = current_time;
|
||||||
|
}
|
||||||
|
|
||||||
|
@@ -1231,8 +1232,8 @@ main(int argc, /* I - Number of comm
|
||||||
|
#endif /* HAVE_GSSAPI */
|
||||||
|
|
||||||
|
#if defined(__APPLE__) && defined(HAVE_DLFCN_H)
|
||||||
|
- /*
|
||||||
|
- * Unload Print Service quota enforcement library (X Server only)
|
||||||
|
+ /*
|
||||||
|
+ * Unload Print Service quota enforcement library (X Server only)
|
||||||
|
*/
|
||||||
|
|
||||||
|
PSQUpdateQuotaProc = NULL;
|
||||||
|
@@ -1594,13 +1595,13 @@ launchd_checkin(void)
|
||||||
|
|
||||||
|
if (lis)
|
||||||
|
{
|
||||||
|
- cupsdLogMessage(CUPSD_LOG_DEBUG,
|
||||||
|
+ cupsdLogMessage(CUPSD_LOG_DEBUG,
|
||||||
|
"launchd_checkin: Matched existing listener %s with fd %d...",
|
||||||
|
httpAddrString(&(lis->address), s, sizeof(s)), fd);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
- cupsdLogMessage(CUPSD_LOG_DEBUG,
|
||||||
|
+ cupsdLogMessage(CUPSD_LOG_DEBUG,
|
||||||
|
"launchd_checkin: Adding new listener %s with fd %d...",
|
||||||
|
httpAddrString(&addr, s, sizeof(s)), fd);
|
||||||
|
|
||||||
|
@@ -1654,12 +1655,12 @@ launchd_checkout(void)
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Create or remove the launchd KeepAlive file based on whether
|
||||||
|
- * there are active jobs, polling, browsing for remote printers or
|
||||||
|
+ * there are active jobs, polling, browsing for remote printers or
|
||||||
|
* shared printers to advertise...
|
||||||
|
*/
|
||||||
|
|
||||||
|
- if ((cupsArrayCount(ActiveJobs) || NumPolled ||
|
||||||
|
- (Browsing &&
|
||||||
|
+ if ((cupsArrayCount(ActiveJobs) || NumPolled ||
|
||||||
|
+ (Browsing &&
|
||||||
|
(BrowseRemoteProtocols ||
|
||||||
|
(BrowseLocalProtocols && NumBrowsers && cupsArrayCount(Printers))))))
|
||||||
|
{
|
@ -67,6 +67,7 @@ Patch42: cups-sidechannel-intrs.patch
|
|||||||
Patch43: cups-media-empty-warning.patch
|
Patch43: cups-media-empty-warning.patch
|
||||||
Patch44: cups-str3435.patch
|
Patch44: cups-str3435.patch
|
||||||
Patch45: cups-str3436.patch
|
Patch45: cups-str3436.patch
|
||||||
|
Patch46: cups-str3425.patch
|
||||||
|
|
||||||
Patch100: cups-lspp.patch
|
Patch100: cups-lspp.patch
|
||||||
|
|
||||||
@ -241,6 +242,7 @@ module.
|
|||||||
%patch43 -p1 -b .media-empty-warning
|
%patch43 -p1 -b .media-empty-warning
|
||||||
%patch44 -p1 -b .str3435
|
%patch44 -p1 -b .str3435
|
||||||
%patch45 -p1 -b .str3436
|
%patch45 -p1 -b .str3436
|
||||||
|
%patch46 -p1 -b .str3425
|
||||||
|
|
||||||
%if %lspp
|
%if %lspp
|
||||||
%patch100 -p1 -b .lspp
|
%patch100 -p1 -b .lspp
|
||||||
@ -532,6 +534,8 @@ rm -rf $RPM_BUILD_ROOT
|
|||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
* Tue Dec 8 2009 Tim Waugh <twaugh@redhat.com> - 1:1.4.2-14
|
* Tue Dec 8 2009 Tim Waugh <twaugh@redhat.com> - 1:1.4.2-14
|
||||||
|
- The scheduler did not clean out completed jobs when
|
||||||
|
PreserveJobHistory was turned off (STR #3425).
|
||||||
- The web interface did not show completed jobs (STR #3436).
|
- The web interface did not show completed jobs (STR #3436).
|
||||||
- Authenticated printing did not always work when printing directly to
|
- Authenticated printing did not always work when printing directly to
|
||||||
a remote server (STR #3435).
|
a remote server (STR #3435).
|
||||||
|
Loading…
Reference in New Issue
Block a user