# HG changeset patch # User Dmitry Neverov # Date 1375348641 -14400 # Node ID 0d44c31bb36c42bfed604157a5fddbd84d7b22f1 # Parent 020f33b63d59094772da96d159cb0934dac0925d Another workaround for 'access denied' error diff -r 020f33b63d59 -r 0d44c31bb36c mercurial-common/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/HgFileUtil.java --- a/mercurial-common/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/HgFileUtil.java Thu Aug 01 12:51:00 2013 +0400 +++ b/mercurial-common/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/HgFileUtil.java Thu Aug 01 13:17:21 2013 +0400 @@ -4,6 +4,7 @@ import jetbrains.buildServer.util.FileUtil; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; +import com.intellij.openapi.util.SystemInfo; import java.io.File; import java.io.FileFilter; @@ -45,8 +46,16 @@ //a file and there is a dir with a same name (http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6325169) if (dir.exists()) continue; - if (!dir.createNewFile()) - continue; + try { + if (!dir.createNewFile()) + continue; + } catch (IOException e) { + //one more workaround for http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6325169 + if (SystemInfo.isWindows && "Access is denied".equals(e.getMessage()) && dir.exists()) { + continue; + } + throw e; + } if (!dir.delete()) continue; if (!dir.mkdir())