- Fixed buggy JobKillDelay handling fix (STR #3292).
This commit is contained in:
parent
4ce924500d
commit
366cb971f0
@ -1,23 +1,25 @@
|
|||||||
diff -up cups-1.4rc1/scheduler/job.c.cancel-job cups-1.4rc1/scheduler/job.c
|
diff -up cups-1.4rc1/scheduler/job.c.str3292 cups-1.4rc1/scheduler/job.c
|
||||||
--- cups-1.4rc1/scheduler/job.c.cancel-job 2009-08-19 14:48:55.733825903 +0100
|
--- cups-1.4rc1/scheduler/job.c.str3292 2009-08-26 17:01:19.442314736 +0100
|
||||||
+++ cups-1.4rc1/scheduler/job.c 2009-08-19 14:49:01.813826101 +0100
|
+++ cups-1.4rc1/scheduler/job.c 2009-08-26 17:03:51.993190253 +0100
|
||||||
@@ -2359,19 +2359,21 @@ cupsdSetJobState(
|
@@ -2359,19 +2359,23 @@ cupsdSetJobState(
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case IPP_JOB_ABORTED :
|
case IPP_JOB_ABORTED :
|
||||||
- case IPP_JOB_CANCELED :
|
- case IPP_JOB_CANCELED :
|
||||||
case IPP_JOB_COMPLETED :
|
case IPP_JOB_COMPLETED :
|
||||||
|
+ case IPP_JOB_CANCELED :
|
||||||
/*
|
/*
|
||||||
- * Expire job subscriptions since the job is now "completed"...
|
- * Expire job subscriptions since the job is now "completed"...
|
||||||
+ * Remove the job from the active list...
|
+ * Remove the job from the active list if there are no
|
||||||
|
+ * processes still running for it...
|
||||||
*/
|
*/
|
||||||
|
|
||||||
- cupsdExpireSubscriptions(NULL, job);
|
- cupsdExpireSubscriptions(NULL, job);
|
||||||
|
+ for (i = 0; job->filters[i] < 0; i++);
|
||||||
|
+ if (newstate != IPP_JOB_CANCELED ||
|
||||||
|
+ (!job->filters[i] && job->backend <= 0))
|
||||||
+ cupsArrayRemove(ActiveJobs, job);
|
+ cupsArrayRemove(ActiveJobs, job);
|
||||||
+
|
|
||||||
+ /* fall through... */
|
|
||||||
|
|
||||||
+ case IPP_JOB_CANCELED :
|
|
||||||
/*
|
/*
|
||||||
- * Remove the job from the active list...
|
- * Remove the job from the active list...
|
||||||
+ * Expire job subscriptions since the job is now "completed"...
|
+ * Expire job subscriptions since the job is now "completed"...
|
||||||
@ -28,9 +30,9 @@ diff -up cups-1.4rc1/scheduler/job.c.cancel-job cups-1.4rc1/scheduler/job.c
|
|||||||
|
|
||||||
#ifdef __APPLE__
|
#ifdef __APPLE__
|
||||||
/*
|
/*
|
||||||
diff -up cups-1.4rc1/scheduler/main.c.cancel-job cups-1.4rc1/scheduler/main.c
|
diff -up cups-1.4rc1/scheduler/main.c.str3292 cups-1.4rc1/scheduler/main.c
|
||||||
--- cups-1.4rc1/scheduler/main.c.cancel-job 2009-08-19 14:48:55.451701014 +0100
|
--- cups-1.4rc1/scheduler/main.c.str3292 2009-08-26 17:01:19.084319753 +0100
|
||||||
+++ cups-1.4rc1/scheduler/main.c 2009-08-19 14:49:01.817825841 +0100
|
+++ cups-1.4rc1/scheduler/main.c 2009-08-26 17:03:52.005190304 +0100
|
||||||
@@ -1803,6 +1803,13 @@ process_children(void)
|
@@ -1803,6 +1803,13 @@ process_children(void)
|
||||||
cupsdContinueJob(job);
|
cupsdContinueJob(job);
|
||||||
}
|
}
|
||||||
@ -39,7 +41,7 @@ diff -up cups-1.4rc1/scheduler/main.c.cancel-job cups-1.4rc1/scheduler/main.c
|
|||||||
+ {
|
+ {
|
||||||
+ for (i = 0; job->filters[i] < 0; i++);
|
+ for (i = 0; job->filters[i] < 0; i++);
|
||||||
+
|
+
|
||||||
+ if (!job->filters[i] && job->backend < 0)
|
+ if (!job->filters[i] && job->backend <= 0)
|
||||||
+ cupsArrayRemove(ActiveJobs, job);
|
+ cupsArrayRemove(ActiveJobs, job);
|
||||||
+ }
|
+ }
|
||||||
}
|
}
|
||||||
|
@ -532,7 +532,8 @@ rm -rf $RPM_BUILD_ROOT
|
|||||||
%{php_extdir}/phpcups.so
|
%{php_extdir}/phpcups.so
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
* Fri Aug 21 2009 Tim Waugh <twaugh@redhat.com> 1:1.4-0.rc1.18
|
* Wed Aug 26 2009 Tim Waugh <twaugh@redhat.com> 1:1.4-0.rc1.18
|
||||||
|
- Fixed buggy JobKillDelay handling fix (STR #3292).
|
||||||
- Prevent infinite loop in ppdc (STR #3293).
|
- Prevent infinite loop in ppdc (STR #3293).
|
||||||
|
|
||||||
* Fri Aug 21 2009 Tomas Mraz <tmraz@redhat.com> - 1:1.4-0.rc1.17.1
|
* Fri Aug 21 2009 Tomas Mraz <tmraz@redhat.com> - 1:1.4-0.rc1.17.1
|
||||||
|
Loading…
Reference in New Issue
Block a user