From 1a25977197984f279e3a8658e6cf595f4f2a02e7 Mon Sep 17 00:00:00 2001 From: Rainer Klute Date: Mon, 1 Sep 2003 05:45:36 +0000 Subject: [PATCH] Bug fixed in writing Unicode strings. git-svn-id: https://svn.apache.org/repos/asf/jakarta/poi/trunk@353328 13f79535-47bb-0310-9956-ffa450edef68 --- src/java/org/apache/poi/hpsf/VariantSupport.java | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/java/org/apache/poi/hpsf/VariantSupport.java b/src/java/org/apache/poi/hpsf/VariantSupport.java index 4bb9f5ee9..6e9d96c60 100644 --- a/src/java/org/apache/poi/hpsf/VariantSupport.java +++ b/src/java/org/apache/poi/hpsf/VariantSupport.java @@ -348,7 +348,7 @@ public class VariantSupport extends Variant case Variant.VT_LPWSTR: { final int nrOfChars = ((String) value).length() + 1; - TypeWriter.writeUIntToStream(out, nrOfChars); + length += TypeWriter.writeUIntToStream(out, nrOfChars); char[] s = Util.pad4((String) value); for (int i = 0; i < s.length; i++) { @@ -358,8 +358,8 @@ public class VariantSupport extends Variant final byte lowb = (byte) low; out.write(lowb); out.write(highb); + length += 2; } - length = nrOfChars * 2; out.write(0x00); out.write(0x00); length += 2; @@ -386,8 +386,7 @@ public class VariantSupport extends Variant } case Variant.VT_I4: { - TypeWriter.writeToStream(out, ((Long) value).intValue()); - length = LittleEndianConsts.INT_SIZE; + length += TypeWriter.writeToStream(out, ((Long) value).intValue()); break; } case Variant.VT_FILETIME: