diff options
author | Anton Tananaev <anton.tananaev@gmail.com> | 2019-04-29 22:11:47 -0700 |
---|---|---|
committer | Anton Tananaev <anton.tananaev@gmail.com> | 2019-04-29 22:11:47 -0700 |
commit | 35b902cd59070a7185d99640851b99798a0d1eb7 (patch) | |
tree | 8eb5719c424f7c58235940d20af67e56397087da /src/main/java/org/traccar/protocol/RetranslatorProtocolDecoder.java | |
parent | 707389659d7d1e08f774bf82557f0bcff4b13e37 (diff) | |
download | trackermap-server-35b902cd59070a7185d99640851b99798a0d1eb7.tar.gz trackermap-server-35b902cd59070a7185d99640851b99798a0d1eb7.tar.bz2 trackermap-server-35b902cd59070a7185d99640851b99798a0d1eb7.zip |
Fix buffer reference issues
Diffstat (limited to 'src/main/java/org/traccar/protocol/RetranslatorProtocolDecoder.java')
-rw-r--r-- | src/main/java/org/traccar/protocol/RetranslatorProtocolDecoder.java | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/main/java/org/traccar/protocol/RetranslatorProtocolDecoder.java b/src/main/java/org/traccar/protocol/RetranslatorProtocolDecoder.java index 0688c9b0e..5bf6cef50 100644 --- a/src/main/java/org/traccar/protocol/RetranslatorProtocolDecoder.java +++ b/src/main/java/org/traccar/protocol/RetranslatorProtocolDecoder.java @@ -1,5 +1,5 @@ /* - * Copyright 2018 Anton Tananaev (anton@traccar.org) + * Copyright 2018 - 2019 Anton Tananaev (anton@traccar.org) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -47,7 +47,7 @@ public class RetranslatorProtocolDecoder extends BaseProtocolDecoder { buf.readUnsignedInt(); // length int idLength = buf.indexOf(buf.readerIndex(), buf.writerIndex(), (byte) 0x00) - buf.readerIndex(); - String id = buf.readBytes(idLength).toString(StandardCharsets.US_ASCII); + String id = buf.readCharSequence(idLength, StandardCharsets.US_ASCII).toString(); buf.readByte(); DeviceSession deviceSession = getDeviceSession(channel, remoteAddress, id); if (deviceSession == null) { @@ -68,7 +68,7 @@ public class RetranslatorProtocolDecoder extends BaseProtocolDecoder { int dataType = buf.readUnsignedByte(); int nameLength = buf.indexOf(buf.readerIndex(), buf.writerIndex(), (byte) 0x00) - buf.readerIndex(); - String name = buf.readBytes(nameLength).toString(StandardCharsets.US_ASCII); + String name = buf.readCharSequence(nameLength, StandardCharsets.US_ASCII).toString(); buf.readByte(); if (name.equals("posinfo")) { @@ -83,7 +83,7 @@ public class RetranslatorProtocolDecoder extends BaseProtocolDecoder { switch (dataType) { case 1: int len = buf.indexOf(buf.readerIndex(), buf.writerIndex(), (byte) 0x00) - buf.readerIndex(); - position.set(name, buf.readBytes(len).toString(StandardCharsets.US_ASCII)); + position.set(name, buf.readCharSequence(len, StandardCharsets.US_ASCII).toString()); buf.readByte(); break; case 3: |