summaryrefslogtreecommitdiff
path: root/java/src
diff options
context:
space:
mode:
Diffstat (limited to 'java/src')
-rw-r--r--java/src/IceInternal/BasicStream.java19
1 files changed, 13 insertions, 6 deletions
diff --git a/java/src/IceInternal/BasicStream.java b/java/src/IceInternal/BasicStream.java
index ad568e3f347..992a2feee84 100644
--- a/java/src/IceInternal/BasicStream.java
+++ b/java/src/IceInternal/BasicStream.java
@@ -650,14 +650,21 @@ public class BasicStream
public void
writeString(String v)
{
- final int len = v.length();
- writeSize(len);
- if (len > 0)
+ if (v == null)
{
- expand(len);
- for (int i = 0; i < len; i++)
+ writeSize(0);
+ }
+ else
+ {
+ final int len = v.length();
+ writeSize(len);
+ if (len > 0)
{
- _buf.put((byte)v.charAt(i));
+ expand(len);
+ for (int i = 0; i < len; i++)
+ {
+ _buf.put((byte)v.charAt(i));
+ }
}
}
}