|
@@ -813,7 +813,10 @@ static void ccid_write_data_block(USBCCIDState *s, uint8_t slot, uint8_t seq,
|
|
|
if (p->b.bError) {
|
|
|
DPRINTF(s, D_VERBOSE, "error %d\n", p->b.bError);
|
|
|
}
|
|
|
- memcpy(p->abData, data, len);
|
|
|
+ if (len) {
|
|
|
+ g_assert_nonnull(data);
|
|
|
+ memcpy(p->abData, data, len);
|
|
|
+ }
|
|
|
ccid_reset_error_status(s);
|
|
|
usb_wakeup(s->bulk, 0);
|
|
|
}
|