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",
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]);
#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",
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),
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;