[prev in list] [next in list] [prev in thread] [next in thread]
List: cups-commit
Subject: [cups.commit] [CUPS] r8716 - in trunk: . scheduler
From: cups-dev () easysw ! com
Date: 2009-06-16 17:51:58
Message-ID: 9485-cups.commit () news ! easysw ! com
[Download RAW message or body]
Author: mike
Date: 2009-06-16 10:51:55 -0700 (Tue, 16 Jun 2009)
New Revision: 8716
Log:
Don't send notifications when the actual printer-state-reasons values have not
changed.
Modified:
trunk/CHANGES.txt
trunk/scheduler/job.c
Modified: trunk/CHANGES.txt
===================================================================
--- trunk/CHANGES.txt 2009-06-15 22:12:16 UTC (rev 8715)
+++ trunk/CHANGES.txt 2009-06-16 17:51:55 UTC (rev 8716)
@@ -1,9 +1,12 @@
-CHANGES.txt - 2009-06-15
+CHANGES.txt - 2009-06-16
------------------------
CHANGES IN CUPS V1.4.0
- Localization updates (STR #3223)
+ - The scheduler did not minimize the number of printer state events that
+ were generated by filter STATE: messages, which could lead to poor
+ performance.
- The USB backend on Mac OS X did not cleanly cancel a job.
- The network backends now set the connecting-to-device printer-state-
reasons value when looking up the address and copying the print data
Modified: trunk/scheduler/job.c
===================================================================
--- trunk/scheduler/job.c 2009-06-15 22:12:16 UTC (rev 8715)
+++ trunk/scheduler/job.c 2009-06-16 17:51:55 UTC (rev 8716)
@@ -4018,9 +4018,8 @@
cupsdStopPrinter(job->printer, 1);
return;
}
- else
+ else if (cupsdSetPrinterReasons(job->printer, message))
{
- cupsdSetPrinterReasons(job->printer, message);
cupsdAddPrinterHistory(job->printer);
event |= CUPSD_EVENT_PRINTER_STATE;
}
@@ -4169,25 +4168,31 @@
if (*ptr)
{
- cupsdSetPrinterReasons(job->printer,
- "+com.apple.print.recoverable-warning");
- cupsdSetString(&(job->printer->recoverable), ptr);
- cupsdAddPrinterHistory(job->printer);
- event |= CUPSD_EVENT_PRINTER_STATE;
+ if (cupsdSetPrinterReasons(job->printer,
+ "+com.apple.print.recoverable-warning") ||
+ !job->printer->recoverable ||
+ strcmp(job->printer->recoverable, ptr))
+ {
+ cupsdSetString(&(job->printer->recoverable), ptr);
+ cupsdAddPrinterHistory(job->printer);
+ event |= CUPSD_EVENT_PRINTER_STATE;
+ }
}
}
else if (!strncmp(message, "recovered:", 10))
{
- cupsdSetPrinterReasons(job->printer,
- "-com.apple.print.recoverable-warning");
-
ptr = message + 10;
while (isspace(*ptr & 255))
ptr ++;
- cupsdSetString(&(job->printer->recoverable), ptr);
- cupsdAddPrinterHistory(job->printer);
- event |= CUPSD_EVENT_PRINTER_STATE;
+ if (cupsdSetPrinterReasons(job->printer,
+ "-com.apple.print.recoverable-warning") ||
+ !job->printer->recoverable || strcmp(job->printer->recoverable, ptr))
+ {
+ cupsdSetString(&(job->printer->recoverable), ptr);
+ cupsdAddPrinterHistory(job->printer);
+ event |= CUPSD_EVENT_PRINTER_STATE;
+ }
}
else
{
_______________________________________________
cups-commit mailing list
cups-commit@easysw.com
http://lists.easysw.com/mailman/listinfo/cups-commit
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic