From: mike Date: Tue, 19 Mar 2013 18:35:14 +0000 (+0000) Subject: Need to ignore trailing printer/foo null filter... X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=bf3b854a10476b2d2cc22c5a5341642859f4d40c;p=thirdparty%2Fcups.git Need to ignore trailing printer/foo null filter... git-svn-id: svn+ssh://src.apple.com/svn/cups/cups.org/trunk@10918 7a7537e8-13f0-0310-91df-b6672ffda945 --- diff --git a/scheduler/job.c b/scheduler/job.c index cce4b3969d..aed35e2924 100644 --- a/scheduler/job.c +++ b/scheduler/job.c @@ -635,10 +635,31 @@ cupsdContinueJob(cupsd_job_t *job) /* I - Job */ goto abort_job; } - /* SET FINAL_CONTENT_TYPE HERE */ + /* + * Figure out the final content type... + */ + + cupsdLogJob(job, CUPSD_LOG_DEBUG, "%d filters for job:", + cupsArrayCount(filters)); + for (filter = (mime_filter_t *)cupsArrayFirst(filters); + filter; + filter = (mime_filter_t *)cupsArrayNext(filters)) + cupsdLogJob(job, CUPSD_LOG_DEBUG, "%s (%s/%s to %s/%s, cost %d)", + filter->filter, + filter->src ? filter->src->super : "???", + filter->src ? filter->src->type : "???", + filter->dst ? filter->dst->super : "???", + filter->dst ? filter->dst->type : "???", + filter->cost); + if (!job->printer->remote) { - filter = (mime_filter_t *)cupsArrayLast(filters); + for (filter = (mime_filter_t *)cupsArrayLast(filters); + filter && filter->dst; + filter = (mime_filter_t *)cupsArrayPrev(filters)) + if (strcmp(filter->dst->super, "printer") || + strcmp(filter->dst->type, job->printer->name)) + break; if (filter && filter->dst) {