Am 10.01.2012 09:35, schrieb Stefan Hajnoczi:
This reminds me of another questionable fall-through:
bt-host.c:bt_host_read():
while (s->len --)
switch (*pkt ++) {
...
case HCI_SCODATA_PKT:
if (s->len < 3)
goto bad_pkt;
pktlen = MIN(pkt[2] + 3, s->len);
s->len -= pktlen;
pkt += pktlen;
<--- fall-through or not?
default:
bad_pkt:
fprintf(stderr, "qemu: bad HCI packet type %02x\n", pkt[-1]);
}
It seems the code will skip HCI_SCODATA_PKT and report a warning
(although type
pkt[-1] will be incorrect). Any thoughts?
Stefan
Hi Andrzej,
I think there should be a break statement at the end of the
HCI_SCODATA_PKT case. Could you please check this?
Regards,
Stefan