diff -up gutenprint-5.2.7/src/escputil/escputil.c.null-pointer gutenprint-5.2.7/src/escputil/escputil.c --- gutenprint-5.2.7/src/escputil/escputil.c.null-pointer 2010-12-11 23:04:07.000000000 +0100 +++ gutenprint-5.2.7/src/escputil/escputil.c 2011-07-25 17:52:56.999202508 +0200 @@ -1340,10 +1340,14 @@ do_new_status(status_cmd_t cmd, char *bu const char *ind; const stp_string_list_t *color_list = NULL; stp_parameter_t desc; - const stp_vars_t *printvars = stp_printer_get_defaults(printer); - stp_describe_parameter(printvars, "ChannelNames", &desc); - if (desc.p_type == STP_PARAMETER_TYPE_STRING_LIST) - color_list = desc.bounds.str; + const stp_vars_t *printvars = NULL; + if (printer) + { + printvars = stp_printer_get_defaults(printer); + stp_describe_parameter(printvars, "ChannelNames", &desc); + if (desc.p_type == STP_PARAMETER_TYPE_STRING_LIST) + color_list = desc.bounds.str; + } STP_DEBUG(printf("New format bytes: %d bytes\n", bytes)); if (cmd == CMD_STATUS) printf(_("Printer Name: %s\n"), @@ -1428,7 +1432,8 @@ do_new_status(status_cmd_t cmd, char *bu } i += total_param_count + 2; } - stp_parameter_description_destroy(&desc); + if (printer) + stp_parameter_description_destroy(&desc); exit(0); }