projects
/
lttng-ust.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix: Correctly compute Java agent list loggers response size
[lttng-ust.git]
/
liblttng-ust-java-agent
/
java
/
lttng-ust-agent-common
/
org
/
lttng
/
ust
/
agent
/
client
/
SessiondCommand.java
diff --git
a/liblttng-ust-java-agent/java/lttng-ust-agent-common/org/lttng/ust/agent/client/SessiondCommand.java
b/liblttng-ust-java-agent/java/lttng-ust-agent-common/org/lttng/ust/agent/client/SessiondCommand.java
index fd5bb1de89030579734d158b7e577acb028c6aa7..8b04f4bb38e658d0907451f9c02ea8854c8372d0 100644
(file)
--- a/
liblttng-ust-java-agent/java/lttng-ust-agent-common/org/lttng/ust/agent/client/SessiondCommand.java
+++ b/
liblttng-ust-java-agent/java/lttng-ust-agent-common/org/lttng/ust/agent/client/SessiondCommand.java
@@
-19,6
+19,7
@@
package org.lttng.ust.agent.client;
import java.nio.ByteBuffer;
package org.lttng.ust.agent.client;
import java.nio.ByteBuffer;
+import java.nio.charset.Charset;
/**
* Base class to represent all commands sent from the session daemon to the Java
/**
* Base class to represent all commands sent from the session daemon to the Java
@@
-29,6
+30,12
@@
import java.nio.ByteBuffer;
*/
abstract class SessiondCommand {
*/
abstract class SessiondCommand {
+ /**
+ * Encoding that should be used for the strings in the sessiond agent
+ * protocol on the socket.
+ */
+ protected static final Charset SESSIOND_PROTOCOL_CHARSET = Charset.forName("UTF-8");
+
enum CommandType {
/** List logger(s). */
CMD_LIST(1),
enum CommandType {
/** List logger(s). */
CMD_LIST(1),
@@
-75,18
+82,18
@@
abstract class SessiondCommand {
* formatted.
*/
protected static String readNextString(ByteBuffer buffer) {
* formatted.
*/
protected static String readNextString(ByteBuffer buffer) {
- int
length
= buffer.getInt();
- if (
length
< 0) {
+ int
nbBytes
= buffer.getInt();
+ if (
nbBytes
< 0) {
/* The string length should be positive */
return null;
}
/* The string length should be positive */
return null;
}
- if (
length
== 0) {
+ if (
nbBytes
== 0) {
/* The string is explicitly an empty string */
return "";
}
/* The string is explicitly an empty string */
return "";
}
- byte[] stringBytes = new byte[
length
];
+ byte[] stringBytes = new byte[
nbBytes
];
buffer.get(stringBytes);
buffer.get(stringBytes);
- return new String(stringBytes).trim();
+ return new String(stringBytes
, SESSIOND_PROTOCOL_CHARSET
).trim();
}
}
}
}
This page took
0.024495 seconds
and
4
git commands to generate.