summaryrefslogtreecommitdiff
path: root/scheduler/sysman.c
diff options
context:
space:
mode:
authormsweet <msweet@a1ca3aef-8c08-0410-bb20-df032aa958be>2009-05-13 22:29:41 +0000
committermsweet <msweet@a1ca3aef-8c08-0410-bb20-df032aa958be>2009-05-13 22:29:41 +0000
commit178cb7369d104b95acb92929f36956a38765c84c (patch)
tree4563f57a75df1c4145d25d3ebecf1d3152022362 /scheduler/sysman.c
parentf11a948a02771f78f50b530880a0269d4b4f58eb (diff)
downloadcups-178cb7369d104b95acb92929f36956a38765c84c.tar.gz
Merge changes from CUPS 1.4svn-r8628.
git-svn-id: svn+ssh://src.apple.com/svn/cups/easysw/current@1495 a1ca3aef-8c08-0410-bb20-df032aa958be
Diffstat (limited to 'scheduler/sysman.c')
-rw-r--r--scheduler/sysman.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/scheduler/sysman.c b/scheduler/sysman.c
index 74f1a0342..212f0fdd3 100644
--- a/scheduler/sysman.c
+++ b/scheduler/sysman.c
@@ -37,6 +37,9 @@
*/
#include "cupsd.h"
+#ifdef HAVE_VPROC_TRANSACTION_BEGIN
+# include <vproc.h>
+#endif /* HAVE_VPROC_TRANSACTION_BEGIN */
/*
@@ -138,6 +141,9 @@ cupsdSetBusyState(void)
"Active clients and printing jobs",
"Active clients, printing jobs, and dirty files"
};
+#ifdef HAVE_VPROC_TRANSACTION_BEGIN
+ static vproc_transaction_t vtran = 0; /* Current busy transaction */
+#endif /* HAVE_VPROC_TRANSACTION_BEGIN */
newbusy = (DirtyCleanTime ? 1 : 0) |
@@ -148,6 +154,16 @@ cupsdSetBusyState(void)
{
busy = newbusy;
+#ifdef HAVE_VPROC_TRANSACTION_BEGIN
+ if (busy && !vtran)
+ vtran = vproc_transaction_begin(NULL);
+ else if (!busy && vtran)
+ {
+ vproc_transaction_end(NULL, vtran);
+ vtran = 0;
+ }
+#endif /* HAVE_VPROC_TRANSACTION_BEGIN */
+
cupsdLogMessage(CUPSD_LOG_DEBUG, "cupsdSetBusyState: %s", busy_text[busy]);
}
}