From 08e9b6e1f8497a8159d6bd7cd6dc96ae79a2e704 Mon Sep 17 00:00:00 2001 From: Bryan Mason Date: Thu, 15 Jul 2021 16:26:27 -0700 Subject: [PATCH] scheduler/job.c: use gziptoany for raw files (not just raw printers) --- scheduler/job.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/scheduler/job.c b/scheduler/job.c index d8c2efcc6..b448acda5 100644 --- a/scheduler/job.c +++ b/scheduler/job.c @@ -501,6 +501,7 @@ cupsdContinueJob(cupsd_job_t *job) /* I - Job */ int backroot; /* Run backend as root? */ int pid; /* Process ID of new filter process */ int banner_page; /* 1 if banner page, 0 otherwise */ + int raw_file; /* 1 if file type is vnd.cups-raw */ int filterfds[2][2] = { { -1, -1 }, { -1, -1 } }; /* Pipes used between filters */ int envc; /* Number of environment variables */ @@ -746,8 +747,11 @@ cupsdContinueJob(cupsd_job_t *job) /* I - Job */ * Add decompression/raw filter as needed... */ + raw_file = !strcmp(job->filetypes[job->current_file]->super, "application") && + !strcmp(job->filetypes[job->current_file]->type, "vnd.cups-raw"); + if ((job->compressions[job->current_file] && (!job->printer->remote || job->num_files == 1)) || - (!job->printer->remote && job->printer->raw && job->num_files > 1)) + (!job->printer->remote && (job->printer->raw || raw_file) && job->num_files > 1)) { /* * Add gziptoany filter to the front of the list... -- 2.31.1