From e8db836eff5b14e9d43b9f7723f9b4b0f142f1f6 Mon Sep 17 00:00:00 2001 From: Markus Kreusch Date: Wed, 10 Aug 2016 13:53:04 +0200 Subject: [PATCH] Workaround for Issue #317 --- .../filesystem/nio/DefaultNioAccess.java | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/main/filesystem-nio/src/main/java/org/cryptomator/filesystem/nio/DefaultNioAccess.java b/main/filesystem-nio/src/main/java/org/cryptomator/filesystem/nio/DefaultNioAccess.java index 5d61ccb89..2196b7a3e 100644 --- a/main/filesystem-nio/src/main/java/org/cryptomator/filesystem/nio/DefaultNioAccess.java +++ b/main/filesystem-nio/src/main/java/org/cryptomator/filesystem/nio/DefaultNioAccess.java @@ -2,6 +2,7 @@ package org.cryptomator.filesystem.nio; import java.io.IOException; import java.nio.channels.AsynchronousFileChannel; +import java.nio.file.AccessDeniedException; import java.nio.file.CopyOption; import java.nio.file.FileSystems; import java.nio.file.Files; @@ -53,7 +54,17 @@ class DefaultNioAccess implements NioAccess { @Override public void delete(Path path) throws IOException { - Files.delete(path); + try { + Files.delete(path); + } catch (AccessDeniedException e) { + // workaround for https://github.com/cryptomator/cryptomator/issues/317 + try { + if (path.toFile().delete()) return; + } catch (UnsupportedOperationException e2) { + // ignore + } + throw e; + } } @Override