From 5252fc7ae2c50421762fafc69d50bd6bf15312ec Mon Sep 17 00:00:00 2001 From: msweet Date: Thu, 2 Jul 2015 17:53:47 +0000 Subject: [PATCH] Fix logging of printer URI (STR #4658) git-svn-id: svn+ssh://src.apple.com/svn/cups/cups.org/trunk@12774 a1ca3aef-8c08-0410-bb20-df032aa958be --- CHANGES.txt | 2 +- scheduler/log.c | 8 +++++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/CHANGES.txt b/CHANGES.txt index c160c450c3..ac1547bbe1 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -5,7 +5,7 @@ CHANGES IN CUPS V2.1b2 - Added support for 3D printers (basic types only, no built-in filters) based on PWG white paper. - - Fixed a bug in the journald support (STR #4655) + - Fixed bugs in the new journald support (STR #4655, STR #4658) CHANGES IN CUPS V2.1b1 diff --git a/scheduler/log.c b/scheduler/log.c index b7dff704f0..19e850c964 100644 --- a/scheduler/log.c +++ b/scheduler/log.c @@ -595,6 +595,7 @@ cupsdLogJob(cupsd_job_t *job, /* I - Job */ asl_object_t m; /* Log message */ char job_id[32], /* job-id string */ completed[32]; /* job-impressions-completed string */ + cupsd_printer_t *printer = job->printer ? job->printer : cupsdFindDest(job->dest); static const char * const job_states[] = { /* job-state strings */ "Pending", @@ -611,7 +612,7 @@ cupsdLogJob(cupsd_job_t *job, /* I - Job */ m = asl_new(ASL_TYPE_MSG); asl_set(m, ASL_KEY_FACILITY, "org.cups.cupsd"); asl_set(m, PWG_Event, "JobStateChanged"); - asl_set(m, PWG_ServiceURI, job->printer->uri); + asl_set(m, PWG_ServiceURI, printer->uri); asl_set(m, PWG_JobID, job_id); asl_set(m, PWG_JobState, job_states[job->state_value - IPP_JSTATE_PENDING]); @@ -632,6 +633,7 @@ cupsdLogJob(cupsd_job_t *job, /* I - Job */ #elif defined(HAVE_SYSTEMD_SD_JOURNAL_H) if (!strcmp(ErrorLog, "syslog")) { + cupsd_printer_t *printer = job->printer ? job->printer : cupsdFindDest(job->dest); static const char * const job_states[] = { /* job-state strings */ "Pending", @@ -658,7 +660,7 @@ cupsdLogJob(cupsd_job_t *job, /* I - Job */ sd_journal_send("MESSAGE=%s", log_line, "PRIORITY=%i", log_levels[level], PWG_Event"=JobStateChanged", - PWG_ServiceURI"=%s", job->printer->uri, + PWG_ServiceURI"=%s", printer->uri, PWG_JobID"=%d", job->id, PWG_JobState"=%s", job_states[job->state_value - IPP_JSTATE_PENDING], PWG_JobImpressionsCompleted"=%d", ippGetInteger(job->impressions, 0), @@ -887,7 +889,7 @@ cupsdLogPage(cupsd_job_t *job, /* I - Job being printed */ break; case 'p' : /* Printer name */ - strlcpy(bufptr, job->printer->name, sizeof(buffer) - (size_t)(bufptr - buffer)); + strlcpy(bufptr, job->dest, sizeof(buffer) - (size_t)(bufptr - buffer)); bufptr += strlen(bufptr); break; -- 2.47.2