diff --git a/camlibs/sierra/sierra-usbwrap.c b/camlibs/sierra/sierra-usbwrap.c index 917f4eae6..a039a64d3 100644 --- a/camlibs/sierra/sierra-usbwrap.c +++ b/camlibs/sierra/sierra-usbwrap.c @@ -356,12 +356,12 @@ usb_wrap_DATA (GPPort *dev, unsigned int type, char *sierra_response, int *sierr } *sierra_len = msg_len - sizeof(*msg); - msg = (uw_pkout_sierra_hdr_t*)malloc(msg_len); + msg = (uw_pkout_sierra_hdr_t*)calloc(msg_len,1); + memset(&cmd, 0, sizeof(cmd)); cmd.cmd = cmdbyte(type, 2); cmd.length = uw_value(msg_len); - memset(msg, 0, sizeof(msg)); ret = gp_port_send_scsi_cmd (dev, 0, (char*)&cmd, sizeof(cmd), sense_buffer, sizeof(sense_buffer), (char*)msg, msg_len);