68 lines
1.5 KiB
Diff
68 lines
1.5 KiB
Diff
|
diff -up cups-1.4.2/CHANGES-1.4.txt.str3407 cups-1.4.2/CHANGES-1.4.txt
|
||
|
diff -up cups-1.4.2/scheduler/job.c.str3407 cups-1.4.2/scheduler/job.c
|
||
|
--- cups-1.4.2/scheduler/job.c.str3407 2009-11-17 12:18:38.518084476 +0000
|
||
|
+++ cups-1.4.2/scheduler/job.c 2009-11-17 13:00:46.204083691 +0000
|
||
|
@@ -1721,7 +1721,30 @@ cupsdLoadJob(cupsd_job_t *job) /* I - J
|
||
|
cupsdLogMessage(CUPSD_LOG_ERROR,
|
||
|
"[Job %d] Ran out of memory for job file types!",
|
||
|
job->id);
|
||
|
- return (1);
|
||
|
+
|
||
|
+ ippDelete(job->attrs);
|
||
|
+ job->attrs = NULL;
|
||
|
+
|
||
|
+ if (compressions)
|
||
|
+ free(compressions);
|
||
|
+
|
||
|
+ if (filetypes)
|
||
|
+ free(filetypes);
|
||
|
+
|
||
|
+ if (job->compressions)
|
||
|
+ {
|
||
|
+ free(job->compressions);
|
||
|
+ job->compressions = NULL;
|
||
|
+ }
|
||
|
+
|
||
|
+ if (job->filetypes)
|
||
|
+ {
|
||
|
+ free(job->filetypes);
|
||
|
+ job->filetypes = NULL;
|
||
|
+ }
|
||
|
+
|
||
|
+ job->num_files = 0;
|
||
|
+ return (0);
|
||
|
}
|
||
|
|
||
|
job->compressions = compressions;
|
||
|
@@ -1789,6 +1812,21 @@ cupsdLoadJob(cupsd_job_t *job) /* I - J
|
||
|
|
||
|
ippDelete(job->attrs);
|
||
|
job->attrs = NULL;
|
||
|
+
|
||
|
+ if (job->compressions)
|
||
|
+ {
|
||
|
+ free(job->compressions);
|
||
|
+ job->compressions = NULL;
|
||
|
+ }
|
||
|
+
|
||
|
+ if (job->filetypes)
|
||
|
+ {
|
||
|
+ free(job->filetypes);
|
||
|
+ job->filetypes = NULL;
|
||
|
+ }
|
||
|
+
|
||
|
+ job->num_files = 0;
|
||
|
+
|
||
|
unlink(jobfile);
|
||
|
|
||
|
return (0);
|
||
|
@@ -4411,7 +4449,7 @@ update_job_attrs(cupsd_job_t *job, /* I
|
||
|
else if (job->printer->state_message[0] && do_message)
|
||
|
cupsdSetString(&(job->printer_message->values[0].string.text),
|
||
|
job->printer->state_message);
|
||
|
-
|
||
|
+
|
||
|
/*
|
||
|
* ... and the printer-state-reasons value...
|
||
|
*/
|