summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/pcl3/eprn/gdeveprn.c')
-rw-r--r--contrib/pcl3/eprn/gdeveprn.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/contrib/pcl3/eprn/gdeveprn.c b/contrib/pcl3/eprn/gdeveprn.c
index e7b1cb5b..d99895fd 100644
--- a/contrib/pcl3/eprn/gdeveprn.c
+++ b/contrib/pcl3/eprn/gdeveprn.c
@@ -836,11 +836,12 @@ int eprn_set_page_layout(eprn_Device *dev)
******************************************************************************/
-void eprn_init_device(eprn_Device *dev, const eprn_PrinterDescription *desc)
+int eprn_init_device(eprn_Device *dev, const eprn_PrinterDescription *desc)
{
eprn_Eprn *eprn = &dev->eprn;
int j;
float hres, vres;
+ int code;
if (dev->is_open) gs_closedevice((gx_device *)dev);
@@ -867,9 +868,11 @@ void eprn_init_device(eprn_Device *dev, const eprn_PrinterDescription *desc)
eprn->intensity_rendering = eprn_IR_halftones;
hres = dev->HWResolution[0];
vres = dev->HWResolution[1];
- eprn_check_colour_info(desc->colour_info, &eprn->colour_model,
+ code = eprn_check_colour_info(desc->colour_info, &eprn->colour_model,
&hres, &vres, &eprn->black_levels, &eprn->non_black_levels);
-
+ if (code) {
+ return code;
+ }
if (eprn->pagecount_file != NULL) {
gs_free(dev->memory->non_gc_memory, eprn->pagecount_file, strlen(eprn->pagecount_file) + 1,
sizeof(char), "eprn_init_device");
@@ -878,7 +881,7 @@ void eprn_init_device(eprn_Device *dev, const eprn_PrinterDescription *desc)
eprn->media_position_set = false;
- return;
+ return 0;
}
/******************************************************************************