From 2989738c90eca6d6d7ebadf8b430b0123858539a Mon Sep 17 00:00:00 2001 From: Stefan Bodewig Date: Sat, 9 Apr 2022 17:58:33 +0200 Subject: plug resource leak as suggested by Mike Phillips in BZ issue 66001 --- .../tools/ant/taskdefs/optional/ssh/ScpFromMessage.java | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) (limited to 'src') diff --git a/src/main/org/apache/tools/ant/taskdefs/optional/ssh/ScpFromMessage.java b/src/main/org/apache/tools/ant/taskdefs/optional/ssh/ScpFromMessage.java index bce3f78a9..96be3447f 100644 --- a/src/main/org/apache/tools/ant/taskdefs/optional/ssh/ScpFromMessage.java +++ b/src/main/org/apache/tools/ant/taskdefs/optional/ssh/ScpFromMessage.java @@ -310,12 +310,16 @@ public class ScpFromMessage extends AbstractSshMessage { private void setLastModified(final File localFile) throws JSchException { SftpATTRS fileAttributes = null; final ChannelSftp channel = openSftpChannel(); - channel.connect(); try { - fileAttributes = channel.lstat(remoteDir(remoteFile) - + localFile.getName()); - } catch (final SftpException e) { - throw new JSchException("failed to stat remote file", e); + channel.connect(); + try { + fileAttributes = channel.lstat(remoteDir(remoteFile) + + localFile.getName()); + } catch (final SftpException e) { + throw new JSchException("failed to stat remote file", e); + } + } finally { + channel.disconnect(); } FileUtils.getFileUtils().setFileLastModified(localFile, ((long) fileAttributes -- cgit v1.2.1