From 2e660dfef7282b43bc58113df39e61b7a79bdf0e Mon Sep 17 00:00:00 2001 From: Furkan KAMACI Date: Thu, 7 Mar 2019 13:08:55 +0300 Subject: [PATCH] Dubbo-3473 Fix Not Properly Closed Resources (#3474) --- .../main/java/org/apache/dubbo/rpc/filter/GenericFilter.java | 3 +-- .../dubbo/rpc/protocol/dubbo/telnet/LogTelnetHandler.java | 3 +-- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/GenericFilter.java b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/GenericFilter.java index 7995468f675..ae7b92c40f1 100644 --- a/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/GenericFilter.java +++ b/dubbo-rpc/dubbo-rpc-api/src/main/java/org/apache/dubbo/rpc/filter/GenericFilter.java @@ -76,8 +76,7 @@ public Result invoke(Invoker invoker, Invocation inv) throws RpcException { } else if (ProtocolUtils.isJavaGenericSerialization(generic)) { for (int i = 0; i < args.length; i++) { if (byte[].class == args[i].getClass()) { - try { - UnsafeByteArrayInputStream is = new UnsafeByteArrayInputStream((byte[]) args[i]); + try(UnsafeByteArrayInputStream is = new UnsafeByteArrayInputStream((byte[]) args[i])) { args[i] = ExtensionLoader.getExtensionLoader(Serialization.class) .getExtension(Constants.GENERIC_SERIALIZATION_NATIVE_JAVA) .deserialize(null, is).readObject(); diff --git a/dubbo-rpc/dubbo-rpc-dubbo/src/main/java/org/apache/dubbo/rpc/protocol/dubbo/telnet/LogTelnetHandler.java b/dubbo-rpc/dubbo-rpc-dubbo/src/main/java/org/apache/dubbo/rpc/protocol/dubbo/telnet/LogTelnetHandler.java index 5ab3c27a6fb..b62198d11d4 100644 --- a/dubbo-rpc/dubbo-rpc-dubbo/src/main/java/org/apache/dubbo/rpc/protocol/dubbo/telnet/LogTelnetHandler.java +++ b/dubbo-rpc/dubbo-rpc-dubbo/src/main/java/org/apache/dubbo/rpc/protocol/dubbo/telnet/LogTelnetHandler.java @@ -55,8 +55,7 @@ public String telnet(Channel channel, String message) { int showLogLength = Integer.parseInt(str[0]); if (file != null && file.exists()) { - try { - FileInputStream fis = new FileInputStream(file); + try(FileInputStream fis = new FileInputStream(file)) { FileChannel filechannel = fis.getChannel(); size = filechannel.size(); ByteBuffer bb;