changeset 351:8458ac11efb4

Remove results of cat command
author Dmitry Neverov <dmitry.neverov@jetbrains.com>
date Wed, 18 Jan 2012 12:23:14 +0400
parents ef217e6078b9
children 1b3be513520e
files mercurial-agent/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialIncludeRuleUpdater.java
diffstat 1 files changed, 8 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/mercurial-agent/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialIncludeRuleUpdater.java	Thu Jan 12 20:12:28 2012 +0400
+++ b/mercurial-agent/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/MercurialIncludeRuleUpdater.java	Wed Jan 18 12:23:14 2012 +0400
@@ -18,6 +18,7 @@
 import java.util.HashMap;
 import java.util.Map;
 
+import static com.intellij.openapi.util.io.FileUtil.delete;
 import static jetbrains.buildServer.buildTriggers.vcs.mercurial.command.CommandUtil.removePrivateData;
 
 /**
@@ -175,13 +176,17 @@
   private Map<String, Pair<String, String>> getSubrepositories(@NotNull final File workingDir, @NotNull final String revision) throws VcsException, IOException {
     CatCommand cc = new CatCommand(mySettings, workingDir);
     cc.setRevId(revision);
+    File catDir = null;
     try {
-      File parentDir = cc.execute(Arrays.asList(".hgsub", ".hgsubstate"), false);
-      File hgsub = new File(parentDir, ".hgsub");
-      File hgsubstate = new File(parentDir, ".hgsubstate");
+      catDir = cc.execute(Arrays.asList(".hgsub", ".hgsubstate"), false);
+      File hgsub = new File(catDir, ".hgsub");
+      File hgsubstate = new File(catDir, ".hgsubstate");
       return readSubrepositories(hgsub, hgsubstate);
     } catch (VcsException e) {
       return Collections.emptyMap();
+    } finally {
+      if (catDir != null)
+        delete(catDir);
     }
   }