dnpds40: Enable use of fast return mode
Or more accurately, block until print complete if not in fast return mode.
This commit is contained in:
parent
f97b139549
commit
24ef3b445d
|
@ -1197,6 +1197,31 @@ top:
|
|||
ptr += i;
|
||||
}
|
||||
|
||||
if (fast_return) {
|
||||
INFO("Fast return mode enabled.\n");
|
||||
} else {
|
||||
INFO("Waiting for job to complete...\n");
|
||||
while (1) {
|
||||
/* Query status */
|
||||
dnpds40_build_cmd(&cmd, "STATUS", "", 0);
|
||||
if (resp) free(resp);
|
||||
resp = dnpds40_resp_cmd(ctx, &cmd, &len);
|
||||
if (!resp)
|
||||
return CUPS_BACKEND_FAILED;
|
||||
dnpds40_cleanup_string((char*)resp, len);
|
||||
status = atoi((char*)resp);
|
||||
|
||||
/* If we're idle or there's an error..*/
|
||||
if (status == 0)
|
||||
break;
|
||||
if (status >= 1000) {
|
||||
ERROR("Printer encountered error: %s\n", dnpds40_statuses(status));
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/* Clean up */
|
||||
if (terminate)
|
||||
copies = 1;
|
||||
|
@ -1925,7 +1950,7 @@ static int dnpds40_cmdline_arg(void *vctx, int argc, char **argv)
|
|||
/* Exported */
|
||||
struct dyesub_backend dnpds40_backend = {
|
||||
.name = "DNP DS40/DS80/DSRX1/DS620",
|
||||
.version = "0.69",
|
||||
.version = "0.70",
|
||||
.uri_prefix = "dnpds40",
|
||||
.cmdline_usage = dnpds40_cmdline,
|
||||
.cmdline_arg = dnpds40_cmdline_arg,
|
||||
|
|
Loading…
Reference in New Issue