Process leftover data first in read
I there was a partial packet left over and it was greater than min_data then the serial port was not read so the packet could never finish.
This commit is contained in:
parent
a9b0a713c3
commit
163fd5044a
11
webserial.js
11
webserial.js
@ -108,7 +108,15 @@ class Transport {
|
||||
let t;
|
||||
let packet = this.left_over;
|
||||
this.left_over = new Uint8Array(0);
|
||||
if (packet.length < min_data) {
|
||||
if (this.slip_reader_enabled) {
|
||||
const val_final = this.slip_reader(packet);
|
||||
if (val_final.length > 0) {
|
||||
return val_final;
|
||||
}
|
||||
packet = this.left_over;
|
||||
this.left_over = new Uint8Array(0);
|
||||
}
|
||||
|
||||
const reader = this.device.readable.getReader();
|
||||
try {
|
||||
if (timeout > 0) {
|
||||
@ -131,7 +139,6 @@ class Transport {
|
||||
}
|
||||
reader.releaseLock();
|
||||
}
|
||||
}
|
||||
if (this.slip_reader_enabled) {
|
||||
return this.slip_reader(packet);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user