From fc0f1ff6978b90083080d2b1d97b6e3dc4ce2a04 Mon Sep 17 00:00:00 2001 From: Marcin Cieslak Date: Mon, 24 Sep 2012 03:15:02 +0200 Subject: [PATCH] dtprintinfo: Use CUPS lpq for FreeBSD Use /usr/local/bin/lpq from CUPS for FreeBSD for now; this prevents immediate dtprintinfo crash. In the future we should handle both built-in /usr/bin/lpq as well as CUPS /usr/local/bin/lpq output in separate functions. Code to support CUPS should probably shared between other operating systems. --- cde/programs/dtprintinfo/objects/PrintObj/ParseJobs.C | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/cde/programs/dtprintinfo/objects/PrintObj/ParseJobs.C b/cde/programs/dtprintinfo/objects/PrintObj/ParseJobs.C index 7a32fdf1..c52d5b2e 100644 --- a/cde/programs/dtprintinfo/objects/PrintObj/ParseJobs.C +++ b/cde/programs/dtprintinfo/objects/PrintObj/ParseJobs.C @@ -870,8 +870,10 @@ void LocalPrintJobs(char *printer, char **return_job_list, int *return_n_jobs) #if defined(__osf__) sprintf(buf, "lpstat -o%s", printer); #endif -#if defined(linux) || defined(CSRG_BASED) - sprintf(buf, "lpq -P%s", printer); +#if defined(linux) || defined(__OpenBSD__) + snprintf(buf, 1000, "lpq -P%s", printer); +#elif defined(__FreeBSD__) + snprintf(buf, 1000, "/usr/local/bin/lpq -P%s", printer); #endif Invoke *_thread = new Invoke(buf, &output); -- 2.25.1