diff options
author | Ivan Muratov <binakot@gmail.com> | 2017-07-14 13:29:52 +0300 |
---|---|---|
committer | Ivan Muratov <binakot@gmail.com> | 2017-07-14 13:29:52 +0300 |
commit | c8f648e0261ad46e9301db35f161140aabad880a (patch) | |
tree | 7c83f7f3d5fe02b1dc02a0cb0f3e5e93e85e59f4 /src/org/traccar/protocol/Arnavi4ProtocolDecoder.java | |
parent | 36eeb5c4fa86f6516585819bb76ca7b73fa4d28a (diff) | |
download | trackermap-server-c8f648e0261ad46e9301db35f161140aabad880a.tar.gz trackermap-server-c8f648e0261ad46e9301db35f161140aabad880a.tar.bz2 trackermap-server-c8f648e0261ad46e9301db35f161140aabad880a.zip |
Upgrade the frame decoder and remove unnecessary check for the last end sign byte in protocol decoder.
Protocol decoder read the buffer until its over, because frame decoder garantee the correct package length.
Added additional tests for frame decoding.
Diffstat (limited to 'src/org/traccar/protocol/Arnavi4ProtocolDecoder.java')
-rw-r--r-- | src/org/traccar/protocol/Arnavi4ProtocolDecoder.java | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/org/traccar/protocol/Arnavi4ProtocolDecoder.java b/src/org/traccar/protocol/Arnavi4ProtocolDecoder.java index 07e4d855c..ed11e1559 100644 --- a/src/org/traccar/protocol/Arnavi4ProtocolDecoder.java +++ b/src/org/traccar/protocol/Arnavi4ProtocolDecoder.java @@ -153,7 +153,7 @@ public class Arnavi4ProtocolDecoder extends BaseProtocolDecoder { int index = buf.readUnsignedByte(); byte recordType = buf.readByte(); - while (recordType != PACKAGE_END_SIGN && buf.readableBytes() != 1) { // The last end sign byte + while (buf.readableBytes() > 0) { switch (recordType) { case RECORD_PING: case RECORD_DATA: @@ -176,7 +176,7 @@ public class Arnavi4ProtocolDecoder extends BaseProtocolDecoder { return null; // Ignore unsupported types of package } - recordType = buf.readByte(); + recordType = buf.readByte(); // The last byte in package is end sign } sendPackageResponse(channel, index); |