diff options
-rw-r--r-- | debug.xml | 2 | ||||
-rw-r--r-- | src/org/traccar/ExtendedObjectDecoder.java | 3 |
2 files changed, 3 insertions, 2 deletions
@@ -80,7 +80,7 @@ <entry key='database.ignoreUnknown'>true</entry> <entry key='database.xml'>false</entry> - <entry key='database.saveOriginal'>false</entry> + <entry key='database.saveOriginal'>true</entry> <entry key='database.changelog'>./schema/changelog-master.xml</entry> diff --git a/src/org/traccar/ExtendedObjectDecoder.java b/src/org/traccar/ExtendedObjectDecoder.java index d7ca30de4..1cfc93541 100644 --- a/src/org/traccar/ExtendedObjectDecoder.java +++ b/src/org/traccar/ExtendedObjectDecoder.java @@ -36,7 +36,8 @@ public abstract class ExtendedObjectDecoder implements ChannelUpstreamHandler { if (Context.getConfig().getBoolean("database.saveOriginal") && decodedMessage instanceof Position) { Position position = (Position) decodedMessage; if (originalMessage instanceof ChannelBuffer) { - position.set(Position.KEY_ORIGINAL, ChannelBuffers.hexDump((ChannelBuffer) originalMessage)); + ChannelBuffer buf = (ChannelBuffer) originalMessage; + position.set(Position.KEY_ORIGINAL, ChannelBuffers.hexDump(buf, 0, buf.writerIndex())); } else if (originalMessage instanceof String) { position.set(Position.KEY_ORIGINAL, DatatypeConverter.printHexBinary( ((String) originalMessage).getBytes(StandardCharsets.US_ASCII))); |