From 4b4d68a4e6ee3bad66e00bd9905c572ad9c7b91b Mon Sep 17 00:00:00 2001 From: Anton Tananaev Date: Wed, 4 May 2016 13:26:16 +1200 Subject: Explicitly use ASCII charset --- .../traccar/protocol/MeitrackProtocolDecoder.java | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) (limited to 'src/org/traccar/protocol/MeitrackProtocolDecoder.java') diff --git a/src/org/traccar/protocol/MeitrackProtocolDecoder.java b/src/org/traccar/protocol/MeitrackProtocolDecoder.java index a920c6e76..bbd7c521c 100644 --- a/src/org/traccar/protocol/MeitrackProtocolDecoder.java +++ b/src/org/traccar/protocol/MeitrackProtocolDecoder.java @@ -15,12 +15,6 @@ */ package org.traccar.protocol; -import java.net.SocketAddress; -import java.nio.charset.Charset; -import java.util.Date; -import java.util.LinkedList; -import java.util.List; -import java.util.regex.Pattern; import org.jboss.netty.buffer.ChannelBuffer; import org.jboss.netty.channel.Channel; import org.traccar.BaseProtocolDecoder; @@ -32,6 +26,13 @@ import org.traccar.helper.UnitsConverter; import org.traccar.model.Event; import org.traccar.model.Position; +import java.net.SocketAddress; +import java.nio.charset.StandardCharsets; +import java.util.Date; +import java.util.LinkedList; +import java.util.List; +import java.util.regex.Pattern; + public class MeitrackProtocolDecoder extends BaseProtocolDecoder { public MeitrackProtocolDecoder(MeitrackProtocol protocol) { @@ -82,7 +83,7 @@ public class MeitrackProtocolDecoder extends BaseProtocolDecoder { private Position decodeRegularMessage(Channel channel, SocketAddress remoteAddress, ChannelBuffer buf) { - Parser parser = new Parser(PATTERN, buf.toString(Charset.defaultCharset())); + Parser parser = new Parser(PATTERN, buf.toString(StandardCharsets.US_ASCII)); if (!parser.matches()) { return null; } @@ -159,10 +160,10 @@ public class MeitrackProtocolDecoder extends BaseProtocolDecoder { private List decodeBinaryMessage(Channel channel, SocketAddress remoteAddress, ChannelBuffer buf) { List positions = new LinkedList<>(); - String flag = buf.toString(2, 1, Charset.defaultCharset()); + String flag = buf.toString(2, 1, StandardCharsets.US_ASCII); int index = buf.indexOf(buf.readerIndex(), buf.writerIndex(), (byte) ','); - String imei = buf.toString(index + 1, 15, Charset.defaultCharset()); + String imei = buf.toString(index + 1, 15, StandardCharsets.US_ASCII); if (!identify(imei, channel, remoteAddress)) { return null; } @@ -237,7 +238,7 @@ public class MeitrackProtocolDecoder extends BaseProtocolDecoder { int index = buf.indexOf(buf.readerIndex(), buf.writerIndex(), (byte) ','); index = buf.indexOf(index + 1, buf.writerIndex(), (byte) ','); - String type = buf.toString(index + 1, 3, Charset.defaultCharset()); + String type = buf.toString(index + 1, 3, StandardCharsets.US_ASCII); switch (type) { case "D03": if (channel != null) { -- cgit v1.2.3