Merge pull request #2781 from arve0/yun_bridge_bug_read_forever

Bridge: discard message if length is bigger than buffer size
This commit is contained in:
Martino Facchin 2015-03-17 14:48:28 +01:00
commit 375013173d
1 changed files with 4 additions and 3 deletions

View File

@ -191,12 +191,13 @@ uint16_t BridgeClass::transfer(const uint8_t *buff1, uint16_t len1,
// Recv data
for (uint16_t i = 0; i < l; i++) {
// Cut received data if rxbuffer is too small
if (i >= rxlen)
break;
int c = timedRead(5);
if (c < 0)
continue;
// Cut received data if rxbuffer is too small
if (i < rxlen)
rxbuff[i] = c;
rxbuff[i] = c;
crcUpdate(c);
}