From 833c0f0c7c4044f8e4f3c0ab1ccd5f6a91f76278 Mon Sep 17 00:00:00 2001 From: Andrea Cavalli Date: Wed, 27 Jan 2021 03:04:35 +0100 Subject: [PATCH] Update TransitLock.java and UTFUtils.java --- .../java/org/warp/commonutils/locks/TransitLock.java | 6 ++++-- .../org/warp/commonutils/serialization/UTFUtils.java | 12 +++++++----- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/src/main/java/org/warp/commonutils/locks/TransitLock.java b/src/main/java/org/warp/commonutils/locks/TransitLock.java index 2322000..adc1818 100644 --- a/src/main/java/org/warp/commonutils/locks/TransitLock.java +++ b/src/main/java/org/warp/commonutils/locks/TransitLock.java @@ -36,8 +36,10 @@ public class TransitLock { } public void transit() { - startTransit(); - endTransit(); + synchronized (synchronization) { + startTransit(); + endTransit(); + } } public void startTransit() { diff --git a/src/main/java/org/warp/commonutils/serialization/UTFUtils.java b/src/main/java/org/warp/commonutils/serialization/UTFUtils.java index d790a63..8ee2ed2 100644 --- a/src/main/java/org/warp/commonutils/serialization/UTFUtils.java +++ b/src/main/java/org/warp/commonutils/serialization/UTFUtils.java @@ -1,19 +1,21 @@ package org.warp.commonutils.serialization; -import java.io.DataInputStream; -import java.io.DataOutputStream; +import java.io.DataInput; +import java.io.DataOutput; import java.io.IOException; import java.nio.charset.StandardCharsets; public class UTFUtils { - public static final void writeUTF(DataOutputStream out, String utf) throws IOException { + public static final void writeUTF(DataOutput out, String utf) throws IOException { byte[] bytes = utf.getBytes(StandardCharsets.UTF_8); out.writeInt(bytes.length); out.write(bytes); } - public static final String readUTF(DataInputStream in) throws IOException { + public static final String readUTF(DataInput in) throws IOException { int len = in.readInt(); - return new String(in.readNBytes(len), StandardCharsets.UTF_8); + byte[] data = new byte[len]; + in.readFully(data, 0, len); + return new String(data, StandardCharsets.UTF_8); } }