Mercurial > hg > mercurial
changeset 623:0d44c31bb36c Gaya-8.0.x
Another workaround for 'access denied' error
author | Dmitry Neverov <dmitry.neverov@jetbrains.com> |
---|---|
date | Thu, 01 Aug 2013 13:17:21 +0400 |
parents | 020f33b63d59 |
children | 7c04874db9e4 d5b4cd89ce46 |
files | mercurial-common/src/jetbrains/buildServer/buildTriggers/vcs/mercurial/HgFileUtil.java |
diffstat | 1 files changed, 11 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- 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())