gutenprint/gutenprint-null-pointer.patch

33 lines
1.3 KiB
Diff
Raw Normal View History

2011-05-05 11:26:40 +00:00
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;
+ }
2011-05-05 11:26:40 +00:00
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);
}