diff --git a/rse/plugins/org.eclipse.rse.services.files.ftp/src/org/eclipse/rse/internal/services/files/ftp/FTPService.java b/rse/plugins/org.eclipse.rse.services.files.ftp/src/org/eclipse/rse/internal/services/files/ftp/FTPService.java index 2ffadc7ca46..025a0f6d251 100644 --- a/rse/plugins/org.eclipse.rse.services.files.ftp/src/org/eclipse/rse/internal/services/files/ftp/FTPService.java +++ b/rse/plugins/org.eclipse.rse.services.files.ftp/src/org/eclipse/rse/internal/services/files/ftp/FTPService.java @@ -844,10 +844,9 @@ public class FTPService extends AbstractFileService implements IFTPService, IFil InputStream input = null; OutputStream output = null; + FTPClient ftpClient = getFTPClient(); try{ - - FTPClient ftpClient = getFTPClient(); clearCache(remoteParent); ftpClient.changeWorkingDirectory(remoteParent); setFileType(isBinary); @@ -875,8 +874,9 @@ public class FTPService extends AbstractFileService implements IFTPService, IFil } else { throw new RemoteFileIOException(new Exception(ftpClient.getReplyString())); } + } catch (SystemOperationCancelledException e) { ftpClient.deleteFile(remoteFile); - + throw e; }finally{ try { if (input!=null) input.close();